How to run an executable program?
This script illustrates how to run an external program or a program that was compiled inside your application. For instance, you may want to launch a program that you ship with your application.
Running an external program file¶
We use the internal HEScript function named RunAProgram to execute a program. We only need to know the path to the program file we want to launch. Fortunately, ExeOutput for PHP has a global variable named HEPublicationPath pointing to the path of the folder that contains the application's exe file.
Script example:
procedure RunTutor;
var
EbookPath, MyProgram: String;
begin
EbookPath := GetGlobalVar("HEPublicationPath", "");
MyProgram := EbookPath + "hehvdemo.exe";
RunAProgram(MyProgram, "", EbookPath, false, SW_SHOWNORMAL);
end;
First we get the path to our application stored into the EbookPath variable. Then we add the filename of our executable program and pass the result to the RunAProgram function.
Run a program that was compiled in the application¶
You can include the program file directly into your application .exe. In that case you need to extract the program file before running it: use the heopenit special protocol, or the following code:
procedure RunACompiledProgram;
var
MyProgram: String;
begin
MyProgram := UnpackTemporaryResource("programfilename.exe");
RunAProgram(MyProgram, "", ExtractFilePath(MyProgram), false, SW_SHOWNORMAL);
end;
This code uses the UnpackTemporaryResource internal function that extracts a compiled file from the publication to a temporary location. Then you just need to execute the file.