Newsgroup: it.comp.lang.visual-basic
Titolo: Ho perso il sorgente! Aiuto!

Avevo creato un'eseguibile contenente tre immagini, sulle quali avevo
associato l'esecuzione di un file diverso...
Il tutto masterizzato su cd...
la directory del cd era la seguente:
autorun.inf
malestorm.exe
setup/setup.exe e tutti gli altri file
varie/update.exe e altri file
mi ricordo che all'immaggine avevo associato un comando del tipo SHEL che
cercava nelle sottocartelle il file da lanciare...
aimč nn mi ricordo piů come era composta la stringa esatta....
qualcuno mi puň aiutare?
Grazie
--
by Malestorm
www.malestorm.it

 varie/update.exe e altri file
Basta che  al click sull immagine metti:
  Shell App.Path & "\setup.exe", vbNormalFocus
piuttosto che:
  Shell App.Path & "\update.exe", vbNormalFocus
 e partiranno setup o update
Se invece ci vuoi chiedere se c'é un modo di recuperare quello che avevi
scritto la risposta é "no, non esistono decompilatori per VB6"...
                    Ciao
                                                Allanon
--
- SPAMKILLER
 L'indirizzo delle risposte é 
itlangv...@michele.sytes.net
 LASCIATE il NOSPAM fa parte dell'indirizzo :-)
  Per superare le impostazioni di protezione antispam scrivete
  nel testo del messaggio la scritta "SPAMKILLER"
Scusate il disturbo, ma non posso più di pubblicità

 scritto la risposta é "no, non esistono decompilatori per VB6"...
E se ti dicessi che ne sto facendo uno?

Matteo ha scritto:

bene, bravo: Aspettiamo il codice!

 wrote in message
news:Tzr7a.7250$%1.21...@tornado.fastwebnet.it...

ti direi che ti sei fumato tutta la giamaica,
visto che da vb5 se il prog è compilato in NATIVO il massimo che puoi
fare è un disassemblatore perchè vb non si appoggia più ad un bytecode
univoco.
CIao
Lorenzo




 aimè nn mi ricordo più come era composta la stringa esatta....
Allora il problema è serio... Ti consiglio di leggere qualcosa su Vb...
Comunque, una scansione ricorsiva si fa così:
Option Explicit
'aggiungere un riferimeto a microsoft scripting runtime
Dim fso As Scripting.FileSystemObject
Private Sub Command1_Click()
Dim theFolder As Scripting.Folder
Set fso = New Scripting.FileSystemObject
Set theFolder = fso.GetFolder("C:\")
shell searchIt(theFolder, "notepad.exe")
Set theFolder = Nothing
Set fso = Nothing
End Sub
Private Function searchIt(theStartPath As Scripting.Folder, TheFileName
As String) As String
   Dim localF As Scripting.File
   Dim subDir As Scripting.Folder
   On Error Resume Next
   For Each localF In theStartPath.Files
 
      If LCase(localF.Name) = LCase(TheFileName) Then
         searchIt = localF.Path
         If Right(searchIt, 1) <> "\" Then
            searchIt = searchIt & "\"
         End If
         searchIt = searchIt & localF.Name
         Exit Function
      End If
   Next
   For Each subDir In theStartPath.SubFolders
   DoEvents
   Debug.Print subDir.Path
      searchIt = searchIt(subDir, TheFileName)
      If searchIt <> "" Then
         Exit Function
      End If
   Next
 
End Function
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

OOPs...Scusate tutti...sono arrivato un po' in ritardo (stavo testando
il codice...)
Cesare I.


No non sono grave... mi avevate aiutato voi..... :)
Grazie

No avevo creato un exe che aveva su delle immagini.... cliccando su queste
partiva il setup di un'altro file contenuto nello stesso cd dell'exe in
questione...

 ti direi che ti sei fumato tutta la giamaica,
Scusate ma ... ROTFL !!!

 ti direi che ti sei fumato tutta la giamaica,
Può darsi, anche perchè i risultati per ora non sono molto soddisfacenti.
Cmq ti do un piccolo suggerimento: prova a risalire al codice ASM, che non
è affatto impossibile. Poi crea un parser che elimini tutte le chiamate a
windows (come
quelle per la grafica, o per far partire lo stesso medesimo programma...)
Il rimanente dovrebbe essere un pastrocchio di codice che se sapientemente
combinato
e tradotto può diventare tranquillamente un .bas.
Naturalmente il risultato sarà il casino del casino perchè difficilmente il
codice ASM viene
generato in modo totalmente sequenziale...
Per quanto riguarda rendere disponibili i sorgenti di questa mia folle
impresa
ci sto pensando... io sono per la filosofia OpenSource, ma non posso negare
che, se funzionasse il tutto (cosa poco probabile), potrei guadagnare un bel
po di soldini... ;)
Se invece la cosa funzionasse ma non troppo... mettero online i sorgenti (in
VB6, tralaltro)
Ciao,
Matteo

 e tradotto può diventare tranquillamente un .bas.
Guarda che la generazione da .bas a codice macchina non è univoca.
Ossia se è vero che una istruzione basic genera (quasi) sempre la stesse
istruzioni assembly non è vero che le stesse istruzioni assembly sono
generate solo da una stessa istruzione basic.
Tieni anche conto che disassemblatori (da .exe a .asm, per esempio), che
sono molto meno complessi di quello che dovresti fare tu, ne esistono
diversi; ma anche i migliori non arrivano nemmeno a creare un
disassemblato che riassemblato funzioni!!!
Comunque buon lavoro e facci sapere i tuoi progressi.
Ciao.
pinco_pallo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


PINCO PALLO GUARDA PRIMA DI QUOTARE
STA BOIATA DEL DECOMPILATORE e' DI MATTEO
E NON MIA.
QUESTA NON LA ACCETTO!
ciao
Lorenzo

 VB6, tralaltro)
ad ogni modo , buon lavoro
MA SMETTILA DI ABUSARE DI STUPEFACENTI FANNO MALE
Ciao
Lorenzo

...
Io sto solo provando a giocare con la fantascienza, non ho mai detto che ci
sto riuscendo...
P.S.:Criticare il lavoro degli altri è sempre facile e divertente per le
persone che non sono coinvolte sul progetto,
se vuoi mantenere un buon rapporto tieni sempre presente questo concetto
evitando critiche inutili.

 QUESTA NON LA ACCETTO!
Calma, ragazzi, calma... In effetti si vede che la parola
"Lorenzo" è quotata, e pure il reference è corretto,
pinco_pallo ha risposto regolarmente a Matteo.
Che poi nel quoting abbia tagliato le parti sbagliate è
pur vero, ma calma, eh ? :-) Non ti ha mica accusato
di niente, e dire ca##ate non è (ancora) reato. :-)
Per fortuna, aggiungo, altrimenti io sarei in galera da
un bel po'... ;-)
Bye, G.

 questione...
Un exe in Vb? Che da Cd, solo cliccando faceva qualcosa? Forse: su Pc
con già installati i runtime del basic...


 E se ti dicessi che ne sto facendo uno?
Ma che avete tutti contro Matteo?
Sta provando a giochicchiare con VB e ASM... lasciatelo fare.
Probabilmente sta solo perdendo del gran tempo, ma che cavolo di diritto
avete a dargli del fumato o pazzoide solo perchè sta sperimentando un po' di
programmazione?
Non è possibile fare un decompilatore? Teoricamente no.
Ma ricordatevi sempre due cose:
1 - La regola del terzo escluso, che detto terra terra è "non si può
escludere l'esistenza di qualcosa solo perchè non l'ho mai vista" (non è una
legge di Murphi, è una colonna della matematica).
2 - Se un esperto dice che una cosa non si può fare significa solo che *LUI*
non la sa fare.
E voi non vorrete certo passare per esperti ;)
Lasciatelo divertire, non fa del male a nessuno.
P.S.: per mancanza di tempo ho accantonato il mio decompilatore per .NET (e
questo si può fare!), ma conto di migliorarlo anche se con molta calma.
Ciao
--
Math Parser : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net

 Lorenzo
Effettivamente il tuo nome non doveva esserci.
Può capitare.
Ciao


 Lasciatelo divertire, non fa del male a nessuno.
Concordo.
Matteo sta facendo quello che credo tutti abbiano provato a fare almeno
una volta. L'importante è non essere ossessionati dall'idea.
C'è molto da imparare anche dal reverse engineering, non solo per quello
che si scopre facendolo, ma soprattutto per quello che si deve
approfondire per farlo.  
Ciao.
