My DriverFunctionTests.cpp has the following:
extern "C" __declspec(dllexport) void __stdcall InitDriver( unsigned short uChannel )
{
pclDriver = new ClDriverWrap( uChannel );
}
My DataWrapper.cs has these:
[DllImport("DriverLibrary.dll")]
public static extern void InitDriver( ushort uChannel );
public static extern void ResetDriver();
public static extern bool IsDriverLoaded( ushort uChannel, [In(),arshalAs(UnmanagedType.LPArray)] byte [] strMessage );
And my DriverTester.cs has:
static void Main()
try
Application.Run(new Driver_Tester());
catch( Exception ex )
MessageBox.Show( "Driver_Tester.Main(): " + ex.Message );
private void Driver_Tester_Load(object sender, System.EventArgs e)
ClDataWrapper.InitDriver(0);
To compile the whole solution in .NET, I put DriverFunctionTests.cpp in the project DriverLibrary, and I put DataWrapper.cs and DriverTester.cs in anther project DriverTester. After compiling, I copy and paste the DriverLibrary.dll to the Debug folder of the project DriverTester.
If I compile this solution in .NET, the code works great. However, if I compile DriverFunctionTests.cpp in Visual Studio 6.0, copy and paste the dll file, then the C# code throws the exception saying "Unable to load the DriverLibrary.dll".
Appreciate your help.