Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Star Wars Zero Company è l'erede di XCOM 2
Star Wars Zero Company è l'erede di XCOM 2
Bit Reactor porta nell’universo di Star Wars una struttura tattica che richiama apertamente XCOM 2, ma la arricchisce con legami tra i personaggi, progressione ruolistica, gestione della base e un sistema di combattimento costruito attorno a tre Punti Azione e alle risorse condivise della squadra
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Abbiamo provato per una settimana intera la Can-Am Origin, la Dual Sport elettrica del gruppo canadese BRP: ecco com'è andata tra città, autostrada e un primo assaggio di sterrato
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-03-2010, 21:20   #1
3nigma666
Senior Member
 
L'Avatar di 3nigma666
 
Iscritto dal: Jan 2005
Città: A casa mia
Messaggi: 825
[c++] Autokill e autocancellazione di un eseguibile da remoto

buona sera a tutti,

premetto subito una cosa, onde evitare da subito pensieri maliziosi, che il codice che sto scrivendo non ha niente a che fare con keylogger, malware etc..

Senza dilungarmi eccessivamente vado subito al dunque.

Sto scrivendo due applicazioni, entrambe girano su un server che sta dietro a 2 firewall (anzi 3 considerando windows).
Devo poter controllare da remoto queste applicazioni, ma entrare nel server mi risulta alquanto difficile data la protezione, e inoltre non voglio lasciare possibili aperture in ingresso dall'esterno.

L'applicazione A.exe ha ESCLUSIVAMENTE il compito di vedere, su un dato server ftp, la presenza di un file che ho deciso chiamarsi init.txt, se è presente l'applicazione A.exe crea un file B.exe.
Questo file B.exe è una applicazione che, tra i vari compiti, ha quello di controllare, sempre su un dato server ftp, se c'è il file die.txt.
Se presente il file die.txt l'applicazione B.exe si deve autokillare e cancellare dall'hard disk

Sono riuscito a fare tutto tranne quello di ricercare su un server ftp un dato file, e soprattutto non riesco a far si che B.exe si autokilli e si autocancelli.

come fare ?
grazie in anticipo per l'aiuto
3nigma666 è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 22:31   #2
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da 3nigma666 Guarda i messaggi
Sto scrivendo due applicazioni, entrambe girano su un server che sta dietro a 2 firewall (anzi 3 considerando windows).
Devo poter controllare da remoto queste applicazioni, ma entrare nel server mi risulta alquanto difficile data la protezione, e inoltre non voglio lasciare possibili aperture in ingresso dall'esterno.
Ma qualcosa che abbia a che fare con la programmazione web no?
Tipo un webservice.

Quote:
L'applicazione A.exe ha ESCLUSIVAMENTE il compito di vedere, su un dato server ftp, la presenza di un file che ho deciso chiamarsi init.txt, se è presente l'applicazione A.exe crea un file B.exe.
Come fa A a creare B?

Quote:
Questo file B.exe è una applicazione che, tra i vari compiti, ha quello di controllare, sempre su un dato server ftp, se c'è il file die.txt.
Se presente il file die.txt l'applicazione B.exe si deve autokillare e cancellare dall'hard disk
per l'"autokill" direi che basta un banale exit, per quanto riguarda la cancellazione non mi risulta possibile su Windows cancellare un file in uso, l'unica è impostare la cancellazione al riavvio, o lavorare in collaborazione con A.
Dopo che A ha avviato B può mettersi in attesa della terminazione del processo B, una volta teminato cancella il file
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 22:38   #3
3nigma666
Senior Member
 
L'Avatar di 3nigma666
 
Iscritto dal: Jan 2005
Città: A casa mia
Messaggi: 825
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Ma qualcosa che abbia a che fare con la programmazione web no?
Tipo un webservice.



Come fa A a creare B?



per l'"autokill" direi che basta un banale exit, per quanto riguarda la cancellazione non mi risulta possibile su Windows cancellare un file in uso, l'unica è impostare la cancellazione al riavvio, o lavorare in collaborazione con A.
Dopo che A ha avviato B può mettersi in attesa della terminazione del processo B, una volta teminato cancella il file
si scusa ho sbagliato a scrivere "lo crea", intendevo dire lo avvia, fa eseguire l'applicativo B.exe


Ok, per quanto riguarda la collaborazione in effetti si può fare.. come collabora ad avviarlo può anche collaborare a cancellarlo..

Ciò che mi manca, che proprio non riesco è far si che B.exe verifichi che sia presente il file die.txt sul server ftp....

pensavo di fare una cosa di questo tipo, molto terra terra:

una cosa del tipo:

Codice:
if (!ftpFileOpen("die.txt"))
{
    //non fare nulla
}
else 
{
   system("exit")
}
a me manca la funzione ftpfileOpen!!!! non la trovo da nessuna parte .. ed è di una banalità assurda ... lo so.. :'(
3nigma666 è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 22:39   #4
bobbytre
Senior Member
 
L'Avatar di bobbytre
 
Iscritto dal: Feb 2010
Messaggi: 466
per l'autokill potresti fare cosi:

il programma B.exe crea un nuovo file C.exe , lo esegue ed esce.

C.exe è un semplice programma che cancella un file passato per parametro.
C.exe all'avvio dell'esecuzione attende n secondi , poi cancella il file passato per parametro ( b.exe), quindi scrive nel registro di windows in esecuzione automatica ( HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce ) "DEL /Q c.exe" cosi all'avvio successivo di windows anche c.exe viene cancellato.
bobbytre è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 22:40   #5
3nigma666
Senior Member
 
L'Avatar di 3nigma666
 
Iscritto dal: Jan 2005
Città: A casa mia
Messaggi: 825
Quote:
Originariamente inviato da bobbytre Guarda i messaggi
per l'autokill potresti fare cosi:

il programma B.exe crea un nuovo file C.exe , lo esegue ed esce.

C.exe è un semplice programma che cancella un file passato per parametro.
C.exe all'avvio dell'esecuzione attende n secondi , poi cancella il file passato per parametro ( b.exe), quindi scrive nel registro di windows in esecuzione automatica ( HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce ) "DEL /Q c.exe" cosi all'avvio successivo di windows anche c.exe viene cancellato.
uhmm... geniale! non c'avevo pensato..
3nigma666 è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 23:12   #6
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da 3nigma666 Guarda i messaggi
Ciò che mi manca, che proprio non riesco è far si che B.exe verifichi che sia presente il file die.txt sul server ftp....
Quindi ti manca anche la parte di A che controlla init.txt

Quote:
pensavo di fare una cosa di questo tipo, molto terra terra:

una cosa del tipo:

Codice:
if (!ftpFileOpen("die.txt"))
{
    //non fare nulla
}
else 
{
   system("exit")
}
a me manca la funzione ftpfileOpen!!!! non la trovo da nessuna parte .. ed è di una banalità assurda ... lo so.. :'(
Già ti ci vuole una libreria per la gestione dell'ftp.
Potresti provare curl o Wininet
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 23:14   #7
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da bobbytre Guarda i messaggi
per l'autokill potresti fare cosi:

il programma B.exe crea un nuovo file C.exe , lo esegue ed esce.

C.exe è un semplice programma che cancella un file passato per parametro.
C.exe all'avvio dell'esecuzione attende n secondi , poi cancella il file passato per parametro ( b.exe), quindi scrive nel registro di windows in esecuzione automatica ( HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce ) "DEL /Q c.exe" cosi all'avvio successivo di windows anche c.exe viene cancellato.
Ma ha già A che può fare tutto questo in maniera più semplice andando ad attendere la terminazione di B, senza bisogno di ulteriori attese inutili e soprattutto senza necessitare del riavvio.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2010, 23:26   #8
3nigma666
Senior Member
 
L'Avatar di 3nigma666
 
Iscritto dal: Jan 2005
Città: A casa mia
Messaggi: 825
Codice:
#define OPEN_DIE "die.txt"

.....

 if (!FtpOpenFile(hCon, OPEN_DIE, GENERIC_READ, 
	  FTP_TRANSFER_TYPE_BINARY | INTERNET_FLAG_TRANSFER_BINARY,0))
  {
	  cout<<"non esiste il file die.txt";
  }
  else
  {
	system("exit");
  }
3nigma666 è offline   Rispondi citando il messaggio o parte di esso
Old 05-03-2010, 00:56   #9
bobbytre
Senior Member
 
L'Avatar di bobbytre
 
Iscritto dal: Feb 2010
Messaggi: 466
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Ma ha già A che può fare tutto questo in maniera più semplice andando ad attendere la terminazione di B, senza bisogno di ulteriori attese inutili e soprattutto senza necessitare del riavvio.
ma noi non sappiamo A che fa dopo la creazione di B , potrebbe non essere in esecuzione quando B va a cercare il file su FTP.

Quindi ,secondo me , è meglio che sia B stesso a provvedere alla sua auto-terminazione
bobbytre è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia) Test ride Can-Am Origin: la moto elettrica che f...
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Google pensiona le Gems di Gemini: cosa ...
Flight 14: incertezza per un problema a ...
C'è un problema con i robot Tesla: i dip...
Raggi gamma anomali dalla Via Lattea sve...
NIO vende il 30% della divisione scambio...
Sony brevetta un DualSense capace di acc...
Un volto per l'assistenza IA: cosa pu&og...
NVIDIA autorizza un buyback da 150 milia...
Come il T-1000 di Terminator 2: circuiti...
Cloudflare: risolto il bug di memoria ch...
Lunex spegne gli antivirus con un driver...
Pannelli solari efficienti oltre il limi...
Qualcomm conferma la collaborazione con ...
OnePlus 16 arriverà il prossimo m...
Dallo scroll condiviso ai quiz con Gemin...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 15:33.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v