MarioR
Mitglied
Hallo,
ich benutze im C# eine Win32DLL:
Wenn ich im Programm MatriksConnection.Test() benutze, dann bekomme ich am ende des Destruktors eine EAccessViolation in der MatriksLib.dll
(Siehe Anhang)
Wird von DotNET beim Freigeben der DLL in der DLL noch irgend eine Funktion aufgerufen?
Gruß Mario
ich benutze im C# eine Win32DLL:
Code:
class MatriksConnection
{
[DllImport("MatriksLib.dll", CharSet = CharSet.Ansi)]
protected static extern void DbConnect(String connectString);
[DllImport("MatriksLib.dll", CharSet = CharSet.Ansi)]
protected static extern String DbCommand(String command);
[DllImport("MatriksLib.dll", CharSet = CharSet.Ansi)]
protected static extern String DbHelp();
[DllImport("MatriksLib.dll", CharSet = CharSet.Ansi)]
protected static extern String DbVersion();
/// <summary>Construktor</summary>
public MatriksConnection()
{
}
/// <summary>Destruktor</summary>
~MatriksConnection()
{
}
public String Test()
{
Clipboard.Clear();
DbConnect("database=10.122.92.51:d:\\firebird\\zi.fdb,username=ROSENBOHM.ZI.GMK,PASSWORD=qwer");
String command = "cmd=READ,\"select=\"\"select * from v_abbaubefahrung\"\"\",provider=clipboard,datei=d:\\test.txt";
return DbCommand(command);
}
}
Wenn ich im Programm MatriksConnection.Test() benutze, dann bekomme ich am ende des Destruktors eine EAccessViolation in der MatriksLib.dll
(Siehe Anhang)
Wird von DotNET beim Freigeben der DLL in der DLL noch irgend eine Funktion aufgerufen?
Gruß Mario