2009-06-30 8 views
13

Ora che so che c'è easy workaround su standard way di codice VBA di blocco e protezione password, vorrei passare a metodi più efficaci di protezione del codice. Devo consegnare uno strumento basato su Excel a un cliente, ma vorrei qualcosa di più della semplice protezione di tipo fastidio che scoraggerebbe solo gli hacker più pigri.Quindi la mia password del progetto Excel-VBA può essere facilmente decifrata ... Quali sono le altre opzioni?

Ci sono delle opzioni in Excel-VBA, o dobbiamo davvero compilare un'applicazione separata e dimenticare la nostra interfaccia basata su Excel? Suggerimenti e illuminazione benvenuti!

Grazie

risposta

7

Il modo più semplice ed efficace è quello di spostare il codice VBA per un VB6 compilato Com/automazione componente aggiuntivo.

Oppure si consiglia di prendere in considerazione una soluzione .Net (con offuscatore) se le prestazioni non sono importanti.

+1

+1. Stavo per usare l'approccio com quando guardavo a vari metodi per proteggere un addin che consideravo commercializzante. Era chiaramente l'opzione più sicura. E io secondo che l'offuscamento può essere molto efficace – brettdj

2

Un altro trucco è quello di scrivere il codice contro un oggetto di Excel in Access quindi rendere il file di accesso in un MDE http://www.blog.methodsinexcel.co.uk/?s=Access+MDB Poveri, ma pigolio ;-)

+0

Il link indicato è rotto, provate questo http://www.databasedev.co.uk/microsoft-access-mde.html. Sembra promettente. –

1

Non c'è bisogno di convertire in un'altra lingua - voi dovrebbe essere in grado di offuscare la maggior parte del tuo codice VBA tramite www.vbsobfuscator.com [Nota: link a archive.org]

+0

Questo è ormai un collegamento morto preso da un sito di squatter con link al sito web dubbi. – Trashman

+0

Non sono riuscito a trovare una versione corrente, quindi ho modificato il post per collegarlo alla più recente copia funzionante di archive.org del sito. Tuttavia, non ho verificato che l'effettiva funzione di offuscatore del sito funzioni ancora. – Trashman