Newsgroup: it.comp.lang.visual-basic
Titolo: Compilati Vb a confronto con Virus

Mi chiedevo una cosa:
Tempo fa ho scritto mezza applicazione che mi permetteva di mandare un email
da Vb.
Ne parlavo con un mio amico, lui me l'ha chiesta (l'applicazione...) e io
gliel'ho mandata.
Risultato?
Errore: Il computer non trova l'oggetto (che IO ho), con il quale il
programma manda l'email.
Qualcosa tipo "Error: Mail.ocx not found"
La domanda allora, è sorta spontanea...:
c'e' un modo per inglobale nell'eseguibile finale anche tutti gli Ocx o
serve per forza il setup?
E cmq... i virus come fanno allora ?
30 Kb di spazio fisico e Mandano email, fanno spam crescono e si
autoreplicano...
Va beh che non è VB...ma qualcosa non mi torna lo stesso...
mi aiutate a far luce ?

 ma qualcosa non mi torna lo stesso...
Che cosa non ti torna?
-- 
ciao, a

 Qualcosa tipo "Error: Mail.ocx not found"
Ma di solito le app. che ti installi sul PC sono tutte monofile da
copia-incolla?
Se sě, dimmi dove te le procuri che ci vado anch'io.
Ciao

 o serve per forza il setup?
Guardando gli ultimi due post tuoi mi viene da pensare... <eg>
-- 
"Seminate Linux, che Windows si pianta da sè...." (Antico Adagio)
Gestione Ottica - Gestionale per Ottici e Programmi Gratuiti su:
http://www.nicolaottomano.it
Sinapsi Antispam. Antispam Gratuito.
http://www.nicolaottomano.it/sinapsi.htm
email spamtrap: 
spam...@nicolaottomano.it


Scusate la presunzione, ma la maggior parte delle volte ciò è possibile
(cioè il copia-incolla); lo so perchè è il mio metodo da sempre usato.
Basta includere in uno zip, oltre all'eseguibile, tutte le dll-standard e gli activex
richiesti (se non sono già presenti nel sistema in \windows\system (per win9x)
o (per win2k/winxp) in \windows\system32).
Poi da VB è possibile, al primo avvio, registrare tutti gli activex (sia dll che
ocx) del programma.
Per gli scettici: provate a usare qualche mio programma gratis scaricabile da
http://xoomer.virgilio.it/salclem/
bye bye by salclem2
--
Meglio una Gallina domani che un Uovo oggi!!

 ocx) del programma.
Il fatto che tu usi VB per registrare a mano uno per uno tutti gli ax che ti
sei copiato non è proprio l'esempio massimo di "copia-incolla-esegui".
Prova creandoti un bel pacchetto di setup.
Ciao

 ha scritto nel messaggio news:35s060F...@individual.net...

Scusa Zanna, ma io veramente non ho parlato di registrare "a mano" gli activex;
li registro solo la prima volta attraverso una chamata API standard all'activex:
si tratta di una funzione che qualunque compilatore (compreso VB) aggiunge
automaticamente all'activex: "DllRegisterServer" senza parametri

:: BottomQuoting: ::
In che modo scusa ?
Puoi fornirmi quaòlche dettaglio in piu'?


 automaticamente all'activex: "DllRegisterServer" senza parametri
Ah, ok.
Allora fallo anche per Mail.ocx ;)
Ciao

 ha scritto nel messaggio news:A07Kd.1898$lB4....@twister1.libero.it...

Ti riporto il codice di un esempio tipico (eventualmente migliorabile con
qualche accorgimento in più, tipo se il file esiste già oppure no, ecc. ecc.):
Private Declare Function FlxGrdRegServer Lib "MSFLXGRD.OCX" Alias "DllRegisterServer" () As Long
Public Function RegFlxGrdLib() As Boolean
   Dim msg As String
   Dim lpr As Long
   On Error GoTo err_reg
   RegFlxGrdLib = True
   msg = "MSFLXGRD.OCX"
   If Not CBoolean(GetSetting(App.Title, "Installed", msg, "")) Then
      lpr = FlxGrdRegServer
      MsgBox msg & "  registered in your system.", vbInformation
      Call SaveSetting(App.Title, "Installed", msg, "1")
   End If
   Exit Function
err_reg:
   RegFlxGrdLib = False
   MsgBox "Cannot register object " & Chr(34) & msg & Chr(34) & vbCr & vbCr & Err.Description, vbCritical
End Function


 automaticamente all'activex: "DllRegisterServer" senza parametri
Che lo facevi via codice VB era chiaro, gia' e' meno evidente come tu faccia 
ad installare automaticamente i runtime nella cartelle di sistema visto che 
e' tutto contenuto in uno ZIP
Dalle mie parti questo non si chiama "eseguibile autosufficente" ma 
"programma di setup fatto in casa", che per di piu' richiede l'intervento 
manuale dell'utente (che deve scompattare nella cartella giusta) e si 
incastra subito non appena cominci ad usare qualcosa di un po' spinto (me lo 
vedo il codice per registrare tutte le DLL di ADO)
Puo' andar bene per cose estremamente semplici, altrimenti tanto vale fare 
un setup degno di questo nome, piu' facile per l'utente e anche per te che 
scrivi il programma
Ciao
-- 
Luca Dormio - 
luca....@tin.it
________________________________
"Marty, non stai ragionando in maniera quadridimensionale"
Dr. Emmett L. Brown 

 ha scritto nel messaggio 
news:d9VJd.1032$lB4....@twister1.libero.it...
