di GAD » 22/09/05 10:39
Mancate condizioni di avvio del processo gestite male o bene(a seconda dello scopo).
Bene nel caso di videogiochi o apps copiate abusivamente.. se il processo si chiude senza dare errore rende la vita piu' dificile ad un possibile cracker che dato il messaggio d'errore lo andrebbe poi a cercare dentro l'exe per patchare quel punto e fregare i sistemi di attivazione.
Male nal caso in cui qualcosa sia stato gestito a manazza...tipo il caricamento dinamico di una dll. Ci sono due modi per caricare una dll, includerla dinamicamente in un progetto oppure fare in modo che il programma in esecuzione la richiami. Se si include dinamicamente nel progetto allora in caso la dll mancasse o fosse di una versione differente apparirebbe un errore. Se invece fosse tutto gestito dal programma il programma potrebbe anche chiudersi senza ritornare messaggi.
A me e' capitato piu' volte per i casi piu' disparati, di solito e' sempre una mancanza di dll, file di risorse, registry ecc.. insomma il programmatore che ha fatto il programma in pratica non ha gestito bene le condizioni di lancio per cui se manca qualcosa che lui riteneva necessario il programma si chiude.
In sti casi per fare prima, se proprio il programma mi serve, lo passo sotto un debugger e a mano vado a vedere il punto in cui salta leggendo dalla ram i path in chiaro a possibili risorse che sta cercando...cosi' poi le vado a mettere io a mano dove se le aspetta.
Quando l'ultimo albero sarà abbattuto,l'ultimo pesce catturato,l'ultimo fiume avvelenato,
soltanto allora gli uomini si accorgeranno chei soldi non possono essere mangiati