|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
vb.net chiudere un processo quando compare nel taskmanager
Ho un programma che quando è in esecuzione avvia un'altro programma chiamato ads.exe e vorrei eliminare questo avvio direttamente con una mia applicazione in backgroud.
Ho provato ad eliminare direttamente ads.exe ma da errore poi l programma principale mentre se carica ads.exe e poi lo killo con taskmanager tutto funziona! Dovrei fare un loop con la funzione if credo ma non so una cippa. La mia idea è questa: Avvio il programma principale Avvio il taskkiller che fa un loop sino a quando ads.exe non si apre Il taskkiller killa ads.exe e si autochiude. Chi mi aiuta?
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Jan 2001
Città: Livorno
Messaggi: 1354
|
Quote:
Codice:
try { foreach (Process proc in Process.GetProcessesByName("ads")) { proc.Kill(); } } catch(Exception ex) { MessageBox.Show(ex.Message); } Codice:
foreach(Process proc in Process.GetProcesses()) { if(proc.MainWindowTitle.StartsWith("TITOLO-FINESTRA")) { IntPtr handle = proc.MainWindowHandle; DestroyWindow(handle); } } |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
|
Scrivi un programma che all'avvio termina senza fare nulla e compilalo come ads.exe
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jan 2001
Città: Livorno
Messaggi: 1354
|
Vedo adesso che nel titolo si fa riferimento a vb.net e non a C#. Non conosco vb.net ma è qualcosa di simile.
Cmq il suggerimento di lorenzo001 è più semplice, prova prima quello. |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
Purtroppo il suggerimento di lorenzo non funziona (fará un checksize?mah) cmq il. Codice il codicd postato in c non prevede il loop nel senso che non aspetta ma killa ciascun processo di nome ads. Come si potrebbe strutturare?
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Aggiungere un loop non dovrebbe essere un problema. Cosa vorresti strutturare?
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Jan 2001
Città: Livorno
Messaggi: 1354
|
Nessun loop, basta che tu crei un timer (tipo ogni sec) e metti le istruzioni di chiusura nell'evento onTimer.
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
Quote:
L'idea per il programma è: cerca ads.exe sino a quando nel taskmanager è presente il processo, poi killa il processo e chiuditi
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
|
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Una volta che hai il codice per chiudere il programma dove sta la difficoltà nel metterlo in un loop (o in un timer)? Ovviamente il loop era la soluzione più immediata e semplice. Su msdn c'è l'esempio di codice su come si usa un Timer Lo unisci con quello per chiudere il programma ed hai fatto. |
|
![]() |
![]() |
![]() |
#10 | |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
Quote:
Vorrei che il mio programma chiudesse ads appena si avvia
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
|
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Il timer ogni 500ms chiamerà il tuo metodo per il kill di ads. Appena trova ads lo killerà, poi deciderai te cosa fare del programma se uscire appena terminato ads o se continuare ad eseguire (nel caso in cui ads possa essere avviato più volte dal programma originale) |
|
![]() |
![]() |
![]() |
#12 | |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
Quote:
![]() Creo un timer imposto i secondi lo setto enabled ma poi che codice aggiungo? Puoi postare un esempio?
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
|
![]() |
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Jan 2001
Città: Livorno
Messaggi: 1354
|
Quote:
Codice:
Private Sub Timer1_Timer() End Sub Codice:
try { foreach (Process proc in Process.GetProcessesByName("ads")) { proc.Kill(); } } catch(Exception ex) { MessageBox.Show(ex.Message); } A quel punto nelle proprietà del timer metti 500 millisecondi e lo lanci. Lui ogni 500 ms guarda se c'è in memoria un programma che si chiama ads. Se c'è lo chiude, se non c'è non fa niente. Puoi anche decidere che se c'èchiude "ads" e poi chiude se stesso. |
|
![]() |
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
|
Quote:
|
|
![]() |
![]() |
![]() |
#15 | |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
Quote:
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
|
![]() |
![]() |
![]() |
#16 | |
Senior Member
Iscritto dal: Aug 2007
Messaggi: 1116
|
Quote:
Mi sono avvicinato da poco a vb,solo perchè è molto semplice come script/linguaggio ![]() Di solito uso youtube o google per trovare quello che mi serve ma questa funzione non l'ho trovata. Cmq se non ti va di aiutarmi non c'è bisogno di commentare ![]()
__________________
Ho concluso con: StormblastMMV - lamabbio - luix93 - fanaticgames - spaun68 - ironia - Alke84 -valis - Paky - spinaspina88 - IloveNAPLES - 182 feedback 100% positivi on eBay www.gma500booster.blogspot.com |
|
![]() |
![]() |
![]() |
#17 |
Senior Member
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
|
Tanto per cominciare VB.NET non è molto semplice, forse la sintassi è "amichevole" ma è sempre programmazione OOP, teoricamente complessa.
Rispetto tantissimo il lavoro del programmatore e mille volte di più chi impara (da solo) riuscendo a raggiungere buoni livelli studiando. In tutti i casi, io commento quanto voglio, anzi, maggiormente in questi casi; non so che lavoro fai ma non penso tu saresti così contento che qualcuno violasse una tua creazione. Sono molto critico - e abbastanza libero per dirlo - su chi utilizza questo o quel suggerimento solo per mettere in piedi la sprotezione di un giochetto. Ti dirò di più, è forte la tentazione di segnalare questa discussione al produttore del gioco e a chi di competenza. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:57.