質問編集履歴

4

誤字

2021/08/20 07:58

投稿

dayjirou123
dayjirou123

スコア1

test CHANGED
File without changes
test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
  ### 以下該当のソースコード
34
34
 
35
- ```html
35
+ ```Python
36
36
 
37
37
  import ctypes
38
38
 

3

不要な情報の削除

2021/08/20 07:58

投稿

dayjirou123
dayjirou123

スコア1

test CHANGED
@@ -1 +1 @@
1
- Python で winscard.dll を使用して、 スマートカードにアクセスしたい
1
+ Python で winscard.dll を使用して、カードリーダーを認識したい
test CHANGED
@@ -1,36 +1,18 @@
1
1
  ### 前提・実現したいこと
2
+
3
+
2
4
 
3
5
  Python で winscard.dll を使用して、
4
6
 
5
- スマートカードにアクセスしたいです。
7
+ カードリーダーの認識をしたいです。
6
-
7
-
8
-
9
-
10
-
11
- - SCardEstablishContext ⇒ SCard系APIの初期処理
12
-
13
- - SCardListReadersW ⇒ ICカードリーダの情報をGETする
14
-
15
- - SCardConnectW ⇒ ICカードリーダーのハンドルをGETする
16
-
17
- - SCardTransmit ⇒ ICカードにコマンド(APDU)を送信して応答をGETする
18
-
19
- - SCardDisconnect ⇒ ICカードリーダーと切断する
20
-
21
- - SCardReleaseContext ⇒ SCard系APIの終了処理
22
-
23
-
24
-
25
- 迄実現したいですが現状
26
-
27
- SCardListReadersW
28
-
29
- で躓いています。
30
8
 
31
9
 
32
10
 
33
11
  別のプログラムでは、カードリーダーは認識できています。
12
+
13
+
14
+
15
+ SCardListReadersA で
34
16
 
35
17
 
36
18
 
@@ -42,29 +24,17 @@
42
24
 
43
25
 
44
26
 
27
+ 引数の渡してるものがおかしいのかとも思うのですが、
28
+
29
+ 何を渡せば正しいのかがわかりません。
30
+
31
+
32
+
45
33
  ### 以下該当のソースコード
46
34
 
47
35
  ```html
48
36
 
49
37
  import ctypes
50
-
51
-
52
-
53
- def msgbox(title, msg, mark):
54
-
55
-
56
-
57
- user32 = ctypes.WinDLL("user32")
58
-
59
- user32.MessageBoxA(
60
-
61
- 0,
62
-
63
- msg.encode('shift-jis'),
64
-
65
- title.encode('shift-jis'),
66
-
67
- mark)
68
38
 
69
39
 
70
40
 
@@ -76,21 +46,11 @@
76
46
 
77
47
 
78
48
 
79
- if ret != 0:
80
-
81
- msgbox("エラー", "システムの起動に失敗しました。必要なソフトをインストールしてください。", 0x00000010)
82
-
83
- else:
84
-
85
- msgbox("OK", "成功", 0x00000040)
86
49
 
87
50
 
88
-
89
- print(handle)
51
+ print(ret)
90
52
 
91
53
  return handle
92
-
93
-
94
54
 
95
55
 
96
56
 
@@ -110,18 +70,6 @@
110
70
 
111
71
  print(ret)
112
72
 
113
- if ret != 0:
114
-
115
- msgbox("エラー", "カードリーダーを認識できません。リーダーが接続されているかご確認ください。", 0x00000010)
116
-
117
- else:
118
-
119
- msgbox("OK", "成功", 0x00000040)
120
-
121
-
122
-
123
-
124
-
125
73
 
126
74
 
127
75
  lib = ctypes.WinDLL("WinScard")
@@ -130,15 +78,13 @@
130
78
 
131
79
  ```
132
80
 
81
+
82
+
133
83
  ### 試したこと
134
84
 
135
85
 
136
86
 
137
- SCardListReadersAをSCardListReadersWにしてみましたが、きませんでした。
87
+ SCardListReadersAをSCardListReadersWにしてみましたが、0は返ってきませんでした。
138
-
139
- そもそもAとWの違いが良くわかっていないのと、
140
-
141
- Pythonでのプログラムは初めてなので、初歩的なところがおかしいかもしれません。
142
88
 
143
89
 
144
90
 
@@ -156,6 +102,8 @@
156
102
 
157
103
 
158
104
 
105
+ Pythonでのプログラムは初めてなので、初歩的なところがおかしいかもしれません。
106
+
159
- 投稿初めてなのでおかしいとことがあったらすみません。
107
+ また、投稿初めてなのでおかしいとことがあったらすみません。
160
108
 
161
109
  よろしくお願いします。

2

書式の改善

2021/08/20 07:57

投稿

dayjirou123
dayjirou123

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,4 @@
1
- ```ここに言語を入力
2
-
3
- コード
4
-
5
- ```### 前提・実現したいこと
1
+ ### 前提・実現したいこと
6
2
 
7
3
  Python で winscard.dll を使用して、
8
4
 
@@ -34,16 +30,6 @@
34
30
 
35
31
 
36
32
 
37
- SCardEstablishContext
38
-
39
- はうまくいきますが、
40
-
41
- SCardListReadersA
42
-
43
- がうまくいきません。
44
-
45
-
46
-
47
33
  別のプログラムでは、カードリーダーは認識できています。
48
34
 
49
35
 
@@ -53,12 +39,6 @@
53
39
  -2146435026
54
40
 
55
41
  が返ってきてしまいます。
56
-
57
- 渡す引数等が悪いのでしょうか。
58
-
59
-
60
-
61
-
62
42
 
63
43
 
64
44
 
@@ -154,9 +134,7 @@
154
134
 
155
135
 
156
136
 
157
- SCardListReadersAをSCardListReadersW
137
+ SCardListReadersAをSCardListReadersWにしてみましたが、できませんでした。
158
-
159
- にしたりしてみましたが、できませんでした。
160
138
 
161
139
  そもそもAとWの違いが良くわかっていないのと、
162
140
 

1

コードを見やすくした

2021/08/20 07:26

投稿

dayjirou123
dayjirou123

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,8 @@
1
+ ```ここに言語を入力
2
+
3
+ コード
4
+
1
- ### 前提・実現したいこと
5
+ ```### 前提・実現したいこと
2
6
 
3
7
  Python で winscard.dll を使用して、
4
8
 
@@ -60,15 +64,9 @@
60
64
 
61
65
  ### 以下該当のソースコード
62
66
 
63
-
67
+ ```html
64
68
 
65
69
  import ctypes
66
-
67
-
68
-
69
-
70
-
71
-
72
70
 
73
71
 
74
72
 
@@ -150,7 +148,7 @@
150
148
 
151
149
  ListReaders(con_text())
152
150
 
153
-
151
+ ```
154
152
 
155
153
  ### 試したこと
156
154