请问如何使用winexec调用Ini文件的值?(50分)

  • 主题发起人 主题发起人 sunylat
  • 开始时间 开始时间
S

sunylat

Unregistered / Unconfirmed
GUEST, unregistred user!
您好:
我把想执行的程序写入INI文件中,随时调取,用WINEXEC执行先前写入INI文件的程序!
 
用ShellExecute吧!

ShellExecute(handle,'open','file.exe','参数','目录',SW_SHOWNORMAL);
 
我的代码:
procedure Tconfig.Button9Click(Sender: TObject);
var judgefile:string;
var inidofile:tinifile;
var yh:lpcstr;
begin
if OpenDialog1.Execute then
begin
judgefile:=ExtractFileDir(Application.Exename)+'/clientconfig.ini';
inidofile:=Tinifile.create(judgefile);
inidofile.writestring('yhprom','order',opendialog1.FileName);
yh:=inidofile.writestring('yhprom','order','');
winexec('',SW_SHOWNORMAL)
end;
end;
因为Yh这个变量是lpcstr类型,而inidofile.writestring('yhprom','order','')是string类型,不匹配,如何解决这个问题,请指教!谢谢!
 
强制转换成pchar型不行吗?
 
如何强制?
 
强制类型转换:
var
a:string;
b:pchar;
begin
b:= pchar(a);
end;
不过好像tinifile.writestring没有返回值,你是怎么赋值的啊?
 
后退
顶部