我正在尝试使用 delphi 创建一个 dll,我设置了一些文件属性,但随后我想从工作目录运行一个 .exe 文件。我尝试使用此代码运行 exe 文件
ShellExecute(Handle, 'open', 'start.exe', nil, nil, SW_SHOWNORMAL);
Run Code Online (Sandbox Code Playgroud)
但我收到错误:未声明的标识符“句柄”。
未声明的标识符“SW_SHOWNORMAL”
运行 exe 文件的最佳方法是什么?
小智 8
确保将 ShellApi 添加到您的单元的使用子句中。
uses ShellApi;
Run Code Online (Sandbox Code Playgroud)
如果程序没有 Windows 句柄,第一个参数可以是 0。
ShellExecute(0, 'open', ('start.exe'), nil, nil, SW_SHOW);
Run Code Online (Sandbox Code Playgroud)
“句柄”参数未在您的 start.exe 过程中定义
Procedure TForm1.StartEXE;
begin
ShellExecute(0, 'open', ('start.exe'), nil, nil, SW_SHOW);
end;
Run Code Online (Sandbox Code Playgroud)
这将使其可从 TForm1 中的任何其他函数或过程普遍访问。
您在问题中描述的错误是:
未声明的标识符“句柄”
只有您知道要传递哪个句柄。将句柄传递给窗体或Application
对象的句柄,或者即使0
您的应用程序没有要处理的窗口句柄。
未声明的标识符“SW_SHOWNORMAL”
该符号在Windows
单位中定义。您只需将该单位添加到您的uses
列表中。
归档时间: |
|
查看次数: |
11389 次 |
最近记录: |