"Il solito" Visual Basic 6 ( he he)

di il
3 risposte

"Il solito" Visual Basic 6 ( he he)

Bhè, ho un'altra domanda... he he...
Come faccio a fare in modo che il mio programma non funzioni o non parta più arrivato ad una certa data?
E' troppo difficile?
Grazie, ciao

dnd*

3 Risposte

  • Re: "Il solito" Visual Basic 6 ( he he)

    Soluzioni (in ordine di difficoltà nel crakkaggio)

    1) Al primo avvio prendi la data di sistema (col metodo Date) e la salvi in un file da qualche parte(anche criptata tanto sta soluzione e' debolissima). Dalla successiva esecuzione te la vai a rileggere e la confronti con la data corrente. Si crakka facile perché basta cambiare la data al PC...

    2) Al primo avvio crei un file nascosto da qualche parte con dentro la data di sistema criptata (sistema analogo al primo)... se lo infili in windows\system o winnt\system e gli dai un nome piuttosto idiota (tipo urlver.dll) ci sta che non sia facilissimo sgamarla. Anche in questo caso si crakka facile cmabiando la data del PC.

    3) Se lo puoi fare limitato ad un certo numero di usi puoi inserire un contatore (che viene scalato via via) nel registro od in un file... Se generi il contatore con un certo criterio (ad esempio non un banale numerico ma un intero con qualche tipo di CRC) puoi evitare un crakkaggio banale. In ogni caso basta individuare il contatore (con un po'più di lavoro rispetto ai casi 1 e 2) ed eliminarlo dalla faccia dell'hard disk.

    4) Puoi ricorrere ad un set di DLL pensate apposta per questo genere di cose (purtroppo non sono gratuite)

    5)Puoi installare un hook di sistema... no, via, forse sto esagerando...

    In ogni caso un sistema sicuro al 100% purtroppo non esiste...
  • Re: "Il solito" Visual Basic 6 ( he he)

    Grazie, ne sai a PACCHI!
    Penso comunque che adotterò il metodo del contatore interno al programma perchè pare il più abbordabile per uno come me.
    Già che ci sono, se non ti scoccia ne vorrei approfittare per chiederti un'altra cosa:
    Ho fatto un database sempre in VB6 ed ho creato l'exe.
    Ora vorrei portare il db in un altro computer (Windows 98 come il mio) ed ho copiato l'exe e db.mdb. Appena provo ad aprire l'exe mi dà il seguente errore:


    Run-time error '713':

    Class not registered.
    Looking for object with CLSID:{00000010-0000-0010-8 .... }


    Che cosa succede? Come devo fare?
    Grazie, ciao

    dnd*
  • Re: "Il solito" Visual Basic 6 ( he he)

    Allora...
    Mi sembra che il problema possa derivare dalla mamcata creazione di un pacchetto di installazione.

    Quando crei un installer, il programma apposito crea in automatico un archivio autoestraente che comprende:
    1) L'eseguibile, l'mdb ed i files del progetto in se
    2) Le componenti (DLL) per poterlo eseguire a runtime (le famose vbrun.dll ce n'è una preticamente per ogni versione di Visual Basic)
    3) Nel caso di progetti che usano qualcosa di specifico (come i database in questo caso) tutte le DLL atte a maneggiarli (che non sono installate di default nel sistema)...

    Credo in pratica che manchi l'ultima versione di jet installata (visto che usi un mdb), oppure utilizzi un componente OCX che non è stato registrato correttamente sul computer su cui vai ad operare...

    Prova a creare un pacchetto e guarda che file vengono inseriti dentro (mi sembra ci sia un opzione di log, per poter vedere cosa c'è effetivamente... altrimenti guarda nel file .ini che viene creato assieme al pacchetto)

    Ciaociao

    Venite a visitarci qui: [url]]
Devi accedere o registrarti per scrivere nel forum
3 risposte