2011-01-28 2 views
0

벨기에 신분증을 사용하여 서명하고 있습니다. SDK의 sign_csp 예제가 실패하여이 오류 (CryptoAcquireFailed. Error=80090019)가 발생했습니다.Beid : C# CryptoAcquireFailed Error = 80090019

//Get a context 
if (!CryptAcquireContext(out hprov, container, provider, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) 
{ 
    MessageBox.Show("CryptAcquireContext failed.\n\n(Error=" + Marshal.GetLastWin32Error().ToString("x") + ")"); 
    return; 
} 

제공 = "벨기에 신분증 CSP"

나는 윈도우 7 64 비트에 있어요. 이 프로그램은 x86 용으로 제작되었습니다.

감사합니다.

+0

err.exe는 0x80090019 = NTE_KEYSET_NOT_DEF라고 말하고 [KB238187] (http://support.microsoft.com/kb/238187)에는 "CSP (Crypto Service Provider)가 올바르게 설정되지 않았을 수 있습니다. 사용중인 공급자에 따라 CSP DLL (Rsabase.dll 또는 Rsaenh.dll)의 exe가 문제를 해결할 수 있습니다. " Beid DLL을 regsvr-ing하려고 시도 했습니까? – Rup

+0

네,하지만 dll에 오류가있었습니다 ... – hotips

답변

2

CSP를 올바르게 설치 했습니까?

는 레지스트리에서 다음 키가 있는지 확인합니다

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Belgium Identity Card CSP 

을하고 Image Path 항목은 CSP-DLL에 대한 올바른 경로를 포함하고 있는지.