0
C#의 C# 개체에서 반환 된 ulong 인 Object_Handle을 C#의 X509Certificate 개체로 변환하려면 어떻게해야합니까? 여기에 코드가 있습니다.PKCS'11 개체 핸들을 C#의 X509Certificate 개체로 변환하십시오.
이제 foundObjectIds [0]을 X509Certificate 개체로 변환해야합니다.
나는 아래의 방법을 시도하고 그것은 나를 위해 작동하지 않습니다.
IntPtr ptr = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(ulong)));
Marshal.StructureToPtr(foundObjectIds[0], ptr, false);
IntPtr[] arr = new IntPtr[2];
Marshal.Copy(ptr, arr, 0, 1);
X509Certificate2 cert= new X509Certificate2((IntPtr)foundObjectIds[0]);
저는 최근에이 PKCS11 interop을 보았습니다. 저의 프로토 타입이 저수준 API를 기반으로하기 전에. 난 그냥 highlevel API로 그들을 교체하기 시작했다. 그러나 두 경우 모두 그것은 IntPtr을 반환합니다. 내용을 바이트 []로 복사하고 X509Certifcate를 초기화하는 데 사용하려고합니다. 그러나 오류가 발생합니다. "바이트 배열을 X509Certificate로 변환 할 수 없습니다" –