我想用 Delphi 编写包含函数的 Dll,然后在 Excel VBA 调用。试了很多次都无法返回正确的结果。
具体如下:
Delphi7 中的测试源码:
//********************************************************************************************
library XlsExt;
{比较两数的大小,并返回较大者}
uses
SysUtils,
Classes;
{$R *.res}
var
SaveExit:Pointer;
procedure LibExit; //为了不使退出Excel时出现异常
begin
ExitProc:=SaveExit; //恢复退出过程链表
end;
function MyMax(X,Y:SmallInt):SmallInt;stdcall; //定义函数
begin
try
if X>Y then MyMax:=X else MyMax:=Y;
except
MyMax:=333; //测试异常处理,可是好像没有看到这个结果。
end;
end;
exports //函数输出
MyMax;
begin
SaveExit:=ExitProc; //保存退出过程链表
ExitProc:=@LibExit; //设置LibExit为退出过程
相关问答:
问问各位高手,1.ACCESS数据库能够存储图片格式的内容吗(JPEG BMP),如果可以应该用什么格式
2.为了正确显示数据库中的图片delphi中应用到那些控件
......
[size=18px]var s,n:integer;
begin
write('输入变长的条数n');
readln(n);
[color=#FF0000]s:=n*(n-1)*(n-2)div 6; //本行替换为s:=n*(n-1)*(n-2)/ ......
我调用vc的dll,传送结构体参数。vc接受后从内存中拷贝出我传送的值。转换之后是乱码
来错地方了.
去DELPHI
ddd
知道错了
有没具体代码啊
//向终端发送门禁报警信息
function alar ......
project project3.exe raised exception class ERemotableException with message 'access violation at address 004037B in module'project2.exe'.read of address 00000003'.process stopped.use ......
我调用vc的dll,传送结构体参数。vc接受后从内存中拷贝出我传送的值。转换之后是乱码
结构体怎么定义的?
//向终端发送门禁报警信息
function alarmSentDoor(var pDoorPara :Alley_ALARM_PARA) ......