Drzewo procesów...

Odpowiedz Nowy wątek
2003-12-26 19:20

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

Prosta sytuacja:
Mój program (A) odpala inny (B).
Jak włącze Menadzera zadań, zaznacze A i klikne "Zakończ drzewo procesów" to zamyka A i B...

Jak to ominąć?
Myślałem, że można by odpalić poprzez explorer.exe (z parametrem) albo cmd.... tylko nie wiem jak... kiedyś to już robiłem coś podobnego
ale pod Win98 a to zupełnie inna sprawa...

F1 [stuk]

Dzięki z góry...
[browar] [cya]

Pozostało 580 znaków

2003-12-26 21:09

Rejestracja: 17 lat temu

Ostatnio: 1 miesiąc temu

0

[...]
Myślałem, że można by odpalić poprzez explorer.exe (z parametrem) albo cmd.... tylko nie wiem jak... kiedyś to już robiłem coś podobnego
ale pod Win98 a to zupełnie inna sprawa... [...]

Jesli pod 98 dziala to czemu nie dziala pod np. XP? mozna znalezc sciezke windowsa i uruchomic explorer (cmd jest w folderze system)


+1 post

Pozostało 580 znaków

2003-12-26 21:13

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

... zapomnialem jak to się odpalało.
Jak biore np.
WinExec('explorer.exe B.exe', sh_Show);
to nie odpala...

// nie korzystaj z WinExec, ta funkcja jest przestarzała - ŁF

Pozostało 580 znaków

2003-12-26 21:18

Rejestracja: 17 lat temu

Ostatnio: 1 miesiąc temu

0

a moze shellexecute?


+1 post

Pozostało 580 znaków

ŁF
2003-12-26 23:01
ŁF
Moderator

Rejestracja: 17 lat temu

Ostatnio: 2 dni temu

0

Jak włącze Menadzera zadań, zaznacze A i klikne "Zakończ drzewo procesów" to zamyka A i B... Jak to ominąć?

Tylko po co Ci omijanie tego? W zasadzie procesy tłucze się nie w całym drzewku, tylko pojedynczo, więc czy mógłbyś mi wytłumaczyć, po co Ci zabezpieczenie przed zamykaniem całego drzewa procesów?

Poza tym - jeśli chcesz uruchomić program poprzez inny program (A->B->C), to i tak będziesz jego włascicielem (A jest rodzicem B, więc i rodzicem C), a więc przy zamykaniu drzewa procesów A i tak program C zostanie utłuczony.


Pozostało 580 znaków

2003-12-31 01:51

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

co do tego (A->B->C) :-/ :-/ :-/
sprawdz sobie taskmgr...

a co do mojego pytania...:

WinExec('cmd /c A.exe', sw_Hide);

// nie cytuj wszystkiego - ŁF

Pozostało 580 znaków

ŁF
2003-12-31 02:33
ŁF
Moderator

Rejestracja: 17 lat temu

Ostatnio: 2 dni temu

0

sprawdz sobie taskmgr...

raz mi się nie chciało sprawdzić, i teraz mam za swoje. faktycznie, inaczej niż w Linuksie, W2k po zabiciu rodzica procesu nie przekazuje dziecka "piętro wyżej", tylko... potomek traci w ogóle rodzica! zostaje sierotką ;-( bez sensu.


Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0