Hirdetés
- Vivo X300 Ultra - tárcsázz, ha van rá keret!
- Android alkalmazások - szoftver kibeszélő topik
- Fotók, videók mobillal
- Yettel topik
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Megvan a Dreame csúcsmodelljének európai ára
- Poco F8 Ultra – forrónaci
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Xiaomi 15T Pro - a téma nincs lezárva
- iPhone topik
-
Mobilarena

Új hozzászólás Aktív témák
-
Hali!
A kódrészletek Delphi-ben írodtak, de maga a probléma programozási nyelvtől független, szóval bármely topik jó lett volna, erre esett a választásom.
Saját WinPE-t hegesztek, ahol egy amolyan Shell-t írok (sima VCL app), aminek az az egyszerű feladata, hogy adott programokat indítson el/futtasson 1 példányban és várja meg amíg bezárják/kilépnek belőle. Kézenfekvő megoldás a WaitForSingleObject, ami teszi is a dolgát, viszont egy furcsa "mellékhatás" jelentkezett, amikor a futtatott app ablakot mozgatom egérrel és leteszem kicsibe (minimize).
Ez lenne a normális, de ehelyett a parent Form-on ott marad az app felülete...Néhány támpont:
# csak WinPE ISO-ról boot-olva (nem virtuális gépen) jön elő, Windows alatt nem
# CreateProcess és ShellExecuteEx esetén is
# sima (nem felügyelt) futtatásnál WinPE ISO boot és Windows alatt sincs gond (csak ekkor ugye nem tudom, mikor lép ki a progi)sima futtatás
ShellExecute(Handle, 'open','X:\Program Files\DiskGenius.exe', nil, nil, SW_SHOWNORMAL) ;CreateProcess
ZeroMemory(@MyStartupInfo, SizeOf(MyStartupInfo));
ZeroMemory(@MyProcessInfo, SizeOf(TProcessInformation));
MyStartupInfo.cb := SizeOf(TStartupInfo);
MyStartupInfo.wShowWindow := SW_SHOWNORMAL;
CreateOK := CreateProcess(PChar('X:\Program Files\DiskGenius.exe'),
nil,
nil,
nil,
False,
CREATE_NEW_PROCESS_GROUP+NORMAL_PRIORITY_CLASS,
nil,
nil,
MyStartupInfo,
MyProcessInfo
);
if CreateOK then
begin
WaitForSingleObject(MyProcessInfo.hProcess,INFINITE);
ShowMessage('Kilépett a program');
end
else ShowMessage('Gebasz van!');
CloseHandle(MyProcessInfo.hProcess);
CloseHandle(MyProcessInfo.hThread);ShellExecuteEx
ZeroMemory(@MyExecuteInfo, SizeOf(MyExecuteInfo));
with MyExecuteInfo do
begin
cbSize := SizeOf(MyExecuteInfo);
fMask := SEE_MASK_NOCLOSEPROCESS;
lpFile := PChar('X:\Program Files\DiskGenius.exe');
lpVerb:='Open';
nShow := SW_SHOWNORMAL;
end;
CreateOK:=ShellExecuteEx(@MyExecuteInfo);
if CreateOK then begin
WaitForSingleObject(MyExecuteInfo.hProcess, INFINITE);
ShowMessage('Kilépett a program');
end
else ShowMessage('Gebasz van!');Szóval: Ötlet? (meg tudom oldani másképp a dolgot, azon ne agyaljatok, csak érdekelne, hogy mi ennek a matyózásnak az oka...)
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Xiaomi 12 128/8GB Blue
- Apple Watch Ultra 2 2023, GPS + Cellular , Titanium 49mm , 3ÉV Garancia
- MiniITX GAMING PC! Ryzen 7700 / RTX 5070 / B850I / 32GB DDR5 / 2TB NVMe / 750w Gold! BeszámítOK
- Apple iPhone 17 Pro Max 256GB 3ÉV garancia
- GAMING PC! Ryzen 9800X3D / RTX 5070 Ti / 32GB DDR5 / X870 / 1TB NVMe / 1000w Gold! BeszámítOK
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- iPhone 17 Pro Max 256GB 100% (3év Garancia) - GARANCIÁBAN CSERÉLT KÉSZÜLÉK
- Apple iPhone 17 Pro 256GB Deep Blue Újszerű állapot 100% akku (19 ciklus)
- NEO-t vennél? NE TEDD!!! KÉSZLETKISÖPRÉSI UltraAkcióóó! Air M4 16GB 512GB Garancia - több színben!
- Csere-Beszámítás! Playstation 5 Slim Disc Edition ( Lemezes Slim PS5 Konzol.)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


