我在Dll中写:
function Ms(s: string):string;stdcall;
var str : string;
begin
Application.MessageBox('ss','aa',MB_OK);
end;在程序中是这样调用的:
procedure TForm.Button2Click(Sender: TObject);
begin
Ms(Edit.Text);
end;可是我在关闭MessageBox时,屏幕会闪。
是什么原因?请问:xiaoxiaobai(小白.net),80分够吗?不够再加!谢谢
function Ms(s: string):string;stdcall;
var str : string;
begin
Application.MessageBox('ss','aa',MB_OK);
end;在程序中是这样调用的:
procedure TForm.Button2Click(Sender: TObject);
begin
Ms(Edit.Text);
end;可是我在关闭MessageBox时,屏幕会闪。
是什么原因?请问:xiaoxiaobai(小白.net),80分够吗?不够再加!谢谢
解决方案 »
- 关于假Wsock32.dll导致的程序初始化错误!
- 如何打印 000XXX 这样格式的数据
- 个为大侠帮帮小弟啊!!!急!!
- 大家分析乡镇企业对软件的需要。
- 如何根据Handle知道该空间的信息?
- 怎样在两个DBEDIT控件中将TAB在在两控件中的移动换成ENTER?
- 用InstallShield5做安装程序,如何将数据源自动添加到ODBC中。
- 调查:现在是用DELPHI 5的人多还是用DELPHI 6的人多?
- 除了INSTALLSHIELD,还有其他工具可以制作DELPHI的安装文件么?
- 用delphi5修改sql server2000出现“键列信息不足,更因影响太多的行”
- 如何让这个启动没有时间间隔???
- 每天上班没事做怎么办?
另在Dll中不要用String,改为PChar
function Ms(s: string):string;stdcall;
begin
Application.MessageBox(pchar(s),'aa',MB_OK);
end;在程序中是这样调用的:
procedure TForm.Button2Click(Sender: TObject);
begin
Ms(Edit.Text);
end;
begin
Application.Handle := hApp;
Application.MessageBox(pchar(s),'aa',MB_OK);
end;在程序中是这样调用的:
procedure TForm.Button2Click(Sender: TObject);
begin
Ms(Handle, Edit.Text);
end;
否则要引用一个单元,文件加大.
xiaoxiaobai(小白.net)可不可以告诉我为什么要这样写?