23. april 2001 - 15:05Der er
13 kommentarer og 3 løsninger
ExecProgram
Er der nogen der ved hvordan man via en delphiprocedure åbner et andet program? Jeg har prøvet at køre \"Delphi-hjælp\'ens\" eksempel: ExecProgram(clock.exe, 1); - men den siger undeclared identifier? nogen foreslag? Er der iøvrigt nogle der ved hvordan man skifter ikon på exe-filen?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Du SKAL gøre som SnowBall siger, DET er måden at gøre det på og det virker altid, og det giver dig den rigtige \"process setup\", jeg har oplevet at programmer ikke kørte når jeg startede dem med en CreateProcess men at det virkede fint når jeg brugte ShellExecute.
Ellers hvis du vil exekvere en exe fil og vente til den er færdig så skal du bruge den følgende funktion :
function ExecAndWait(Filename : String; Parameter: string = \'\'; nCmdShow: integer = sw_normal): longword; var zAppName: array[0..max_path] of char; zParameter: array[0..max_path] of char; zCurDir: array[0..max_path] of char; StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin StrPCopy(zAppName,FileName); StrPCopy(zParameter,Parameter); StrPCopy(zCurDir,GetCurrentDir()); FillChar(StartupInfo,Sizeof(StartupInfo),#0); StartupInfo.cb:=Sizeof(StartupInfo); StartupInfo.dwFlags:=STARTF_USESHOWWINDOW; StartupInfo.wShowWindow:=nCmdShow; if not CreateProcess(zAppName,zParameter,nil,nil,false,CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS,nil,nil,StartupInfo,ProcessInfo) then Result:=0 else begin WaitforSingleObject(ProcessInfo.hProcess,INFINITE); GetExitCodeProcess(ProcessInfo.hProcess,Result); end; end;
Jeg har oplevet at skulle køre et program fra noget script jeg havde lavet, og det kostede faktisk en overarb. lørdag fordi det ikke ville køre det skide program, men gerne alle mulige andre, så lavede jeg min createprocess om til ShellExecute og vupti så virkede det, hvorfor ved jeg ikke, og hvilket program det var jeg skulle køre kan jeg ikke huske, muligvis var det noget med en inf fil der skulle \"DBL-Klikes\" på.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.