If it works with VB, and if you have the private key stored in usual Windows certificate store perhaps your COM has problems to access the private key to decipher data, because a service has no GUI to access the private key password.
Also, it could be any other kind of error that happens when your COM has been called a lot of times, and does not happen when you use it only a few times. Try to print in the log the parameters you are passing to RSA_private_decrypt each time. ----- Original Message ----- From: " " <[EMAIL PROTECTED]> To: <openssl-dev@openssl.org>; <openssl-users@openssl.org> Sent: Wednesday, December 21, 2005 12:08 PM Subject: A problem using a COM dll built with libeay32.dll Hi, everyone: I have a problem. The situation is like this-- I built a project with VC, and the project is a ATL COM project. I built it with libeay32.lib which I added in the "project settings->link" , and the "code generation" I chose "Multithreaded DLL". The COM dll was sucessfully built. When I use the dll in a VB project or asp, it is normal and have no problem. Now I put the dll in a directory of a web server using Windows2000 and added it to the "Component Services". The web server got the data which was encrypted and posted by other clients , then web server's asp program created an object of the COM dll and decrypted the data and returned some messages to clients. When I check the "Event Viewer's Application Log" of the web server, I find there are some com error produced by the COM application.The errors are like this-- The system has called a custom component and that component has failed and generated an exception. This indicates a problem with the custom component. Notify the developer of this component that a failure has occurred and provide them with the information below. Component Prog ID: Server Application ID: {4FC68A3D-A240-4133-834A-2CF075B0C543} Server Application Name: GnetDll The serious nature of this error has caused the process to terminate. Exception: C0000005 Address: 0x010A110D Call Stack: LIBEAY32!RSA_private_decrypt+0xD We are sure the error was produced by the COM application because there are no other program using the libeay32.dll except this. I put libeay32.dll in the "system32" for that I used static linking libeay32.lib within my project. Could anyone know why this happend and how could I solve this problem? Thanks all. lvjing ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager [EMAIL PROTECTED] ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]