Avatar billede lifeweb Nybegynder
05. april 2006 - 17:21 Der er 2 kommentarer

Winexec - vente

Hej

Jeg prøver at mappe nogle drev via winexec.

Jeg vil gerne have mit program til at melde klar NÅR netværksdrevene er mappet.
Som det er nu, skal programmet have lov at stå før jeg lukker det, for at mapningen bliver færdiggjort...

Hvordan gør jeg det?
Avatar billede psycosoft-funware Nybegynder
05. april 2006 - 17:26 #1
procedure ShellExecute_AndWait(FileNAme: String);
var
  exInfo: TShellExecuteInfo;
  Ph: DWORD;
begin
FillChar(exInfo, SizeOf(exInfo), 0);
with exInfo do
begin
cbSize := SizeOf(exInfo);
fMask := SEE_MASK_NOCLOSEPROCESS or SEE_MASK_FLAG_DDEWAIT;
Wnd := GetActiveWindow();
ExInfo.lpVerb := 'open';
lpFile := PChar(FileName);
nShow := SW_SHOWNORMAL;
end;
if ShellExecuteEx(@exInfo) then
begin
Ph := exInfo.hProcess;
end
else
begin
MessageBeep(mb_IconError);
ShowMessage(SysErrorMessage(GetLastError));
Exit;
end;
while WaitForSingleObject(ExInfo.hProcess, 50) <> WAIT_OBJECT_0 do
Application.ProcessMessages;
CloseHandle(Ph);
end;

//Håber det kan bruges :-)

/FunteX! :-)
Avatar billede psycosoft-funware Nybegynder
05. april 2006 - 17:27 #2
shellApi skal tilføjes til din uses... :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester