here's my C# dll:
Code:
public interface IMessage
{
     void Testing();
}

public class MyTest : IMessage
{
     public void Testing()
     {
          Console.WriteLine("Testing dll");
     }
}
here's my cpp code:
Code:
#import "....\aName.tlb" raw_interfaces_only

using namespace aName; 

int _tmain(int argc, _TCHAR* argv[])
{		
	// Initialize COM.
	HRESULT hr = CoInitialize(NULL);

	// Create the interface pointer.
	IMessage pIMessage(__uuidof(MyTest));
	
	// Uninitialize COM.
	CoUninitialize();

	return 0;
}
..and here's my error:
Code:
1>c:\.....cpp(22) : error C2259: 'aName::IMessage' : cannot instantiate abstract class
1>        due to following members:
1>        'HRESULT IUnknown::QueryInterface(const IID &,void **)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\unknwn.h(113) : see declaration of 'IUnknown::QueryInterface'
1>        'ULONG IUnknown::AddRef(void)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\unknwn.h(117) : see declaration of 'IUnknown::AddRef'
1>        'ULONG IUnknown::Release(void)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\unknwn.h(119) : see declaration of 'IUnknown::Release'
1>        'HRESULT IDispatch::GetTypeInfoCount(UINT *)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\oaidl.h(2712) : see declaration of 'IDispatch::GetTypeInfoCount'
1>        'HRESULT IDispatch::GetTypeInfo(UINT,LCID,ITypeInfo **)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\oaidl.h(2715) : see declaration of 'IDispatch::GetTypeInfo'
1>        'HRESULT IDispatch::GetIDsOfNames(const IID &,LPOLESTR *,UINT,LCID,DISPID *)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\oaidl.h(2720) : see declaration of 'IDispatch::GetIDsOfNames'
1>        'HRESULT IDispatch::Invoke(DISPID,const IID &,LCID,WORD,DISPPARAMS *,VARIANT *,EXCEPINFO *,UINT *)' : is abstract
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\oaidl.h(2727) : see declaration of 'IDispatch::Invoke'
1>        'HRESULT aName::IMessage::Testing(void)' : is abstract
1>        c:\...\aName.tlh(72) : see declaration of 'aName::IMessage::Testing'
1>c:\......cpp(22) : error C2664: 'aName::IMessage::IMessage(const aName::IMessage &)' : cannot convert parameter 1 from 'const _GUID' to 'const aName::IMessage &'
1>        Reason: cannot convert from 'const _GUID' to 'const aName::IMessage'
1>        No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called

I created my dll, created a MyKeyFile, and I used the command to run regasm creating my .tlb file. All that seems fine. The C++ code I used came from a quick example on a microsoft support page. My issue is the error saying I have an astract class when I didn't declare an astract class. Maybe it has something to do with those methods that seems to be coming from HRESULT. I don't know if I'm making a mistake with the C++ code accessing the dll, or if I made a mistake within my dll. I just want to access a method in the dll. Any thoughts?