2014-01-05 67 views
0

這是我第一次嘗試在C#中使用讀卡器,或者基本上在任何地方。C#SCardControl返回碼1

我在Windows 7 64bit中使用ACS ACR122U PICC Interface 0閱讀器。當我試圖連接到使用

ModWinsCard.SCardConnect(hContext, cbReader.SelectedItem.ToString(), ModWinsCard.SCARD_SHARE_DIRECT, 0, ref hCard, ref Protocol); 

它返回錯誤代碼6讀者發生

我的第一個問題,但我用Google搜索,並通過改變項目的平臺,Any CPUX86解決了這個問題。

此後我碰到另一個問題,這次是在控制讀者。

我嘗試:

_sentBuffer = new byte[] 
    { 
     0xFF, 
     0x00, 
     0x48, 
     0x00, 
     0x00 
    }; 
_receivedBuffer = new byte[10]; 

_receivedBuffer[0] = 0; 

_returnCode = ModWinsCard.SCardControl(_hCard, _dwControlCode, ref _sentBuffer[0], _sentBuffer.Length, ref _receivedBuffer[0], _receivedBuffer.Length, ref bytesReturned); 

返回的代碼是1,這是奇怪,因爲我無法發現它在documentation

真的需要一隻手在這。

謝謝!

回答

0

我以某種方式解決了從提供商的網站下載最新的驅動程序,並卸載驅動程序光盤中包含的驅動程序。

仍然不知道是什麼返回1,雖然意味着..

3

做一些研究自己關於與SCardControl工作,發現我得到的1相同的返回值。

我找到了錯誤代碼here的列表,然後說明如下。

注意某些返回值可能與現有的Windows返回值具有相同的值,表示類似的條件。有關此處未列出的錯誤代碼的信息,請參閱System Error Codes

這文檔指出錯誤代碼值1ERROR_INVALID_FUNCTION

我知道這個問題是舊的,但希望這將幫助別人的未來。

+0

有趣的是我之前錯過了那個筆記。所以基本上錯誤說我使用了錯誤的功能?也許是不贊成的? –

+0

我還不確定,仍然在解決其他問題,我正在使用PC/SC安全PIN API。如果我找到更多的東西,我會告訴你。 –