我有一个使用VS2010在C#中生成的COM动态链接库,在VS2910中使用它,它工作得很好,但是当我尝试使用Delphi7中的动态链接库时,导入了.tlb文件,一些函数工作得很好,但其中一个似乎生成了以下错误。
Could not load file or assembly 'InnovateCV, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c06107b7da48b1da' or one of its dependencies. The system cannot find the file specified.
不幸
经过大量的实验,我找到了一种方法来交换PChar从FreePascal编译的动态链接库与Delphi编译的可执行文件。我负责动态链接库和可执行文件的源代码,但一个必须在FreePascal中,另一个必须在Delphi中。我的解决方案涉及DLL中的以下方法:
function GetAString(): PChar;
var aString: string;
begin
aString := 'My String';
result := StrAlloc(length(aString) + 1);
StrPCopy(result, aString);
end;
p
我已经升级了我的Delphi 2007应用程序到德尔福西雅图。在Delphi 2007中,我有一个Fortran,它是从我的Delphi应用程序中调用的。升级后,我得到一个错误‘过程终结点没有找到’。请注意,Fortran DLL没有更改,dll与应用程序exe位于相同的路径上。
Delphi的调用代码是
type
TArrayOfTypeNos= array [1..1000] of Integer;
....
procedure CallFunc(
Idx : Integer;
var Nos : Integer;
var ProductTypes : TArrayOfT