I have a .NET assembly that I executed regasm
and gacutil
. I also have COM interoperability with which I am trying to work with a .NET assembly . However, through my pDotNetCOMPtr
I cannot "detect" any of the methods in my common .NET interface. The MFC COM DLL continues to say that when trying to compile with Visual Studio 2010, the Encrypt
method in _SslTcpClientPtr
missing. I am using the .NET 4.0 Framework. Thoughts?
COM / MFC
extern "C" __declspec(dllexport) BSTR __stdcall Encrypt(BSTR encryptString) { CoInitialize(NULL); ICVTnsClient::_SslTcpClientPtr pDotNetCOMPtr; HRESULT hRes = pDotNetCOMPtr.CreateInstance(ICVTnsClient::CLSID_SslTcpClient); if (hRes == S_OK) { BSTR str; hRes = pDotNetCOMPtr->Encrypt(encryptString, &str); if (str == NULL) { return SysAllocString(L"EEncryptionError"); } else return str; } pDotNetCOMPtr = NULL; return SysAllocString(L"EDLLError"); CoUninitialize (); }
.NET
namespace ICVTnsClient { [Guid("D6F80E95-8A27-4ae6-B6DE-0542A0FC7039")] [ComVisible(true)] public interface _SslTcpClient { string Encrypt(string requestContent); string Decrypt(string requestContent); } [Guid("13FE33AD-4BF8-495f-AB4D-6C61BD463EA4")] [ClassInterface(ClassInterfaceType.None)] public class SslTcpClient : _SslTcpClient { ... public string Encrypt(string requestContent) {
user195488
source share