Domanda

Qualcuno può dirmi come convertire un'applicazione legacy che è vb6 (ocx ed ex di COM dll per usare Regfree COM.

Ho provato ad aprire le DLL in Visual Studio e ho creato il file manifest, ma alcune delle DLL stanno dando errore.

Esistono strumenti là fuori che mi aiuteranno a fare questo processo?

Ho provato uno strumento da codeproject che si chiama regsvr42, che non sta creando completamente il manifest.

Ho usato strumenti come PE Explorer in cui ottengo tutte le informazioni di typelib, ma convertirle in file manifest è troppo difficile.

Abbiamo iniziato a migrare su .NET, per alcuni mesi dobbiamo distribuirlo, sarà più facile se si tratta di una distribuzione basata su xcopy.

È stato utile?

Soluzione

Per creare file manifest puoi provare a utilizzare Make My Manifest da http://mmm4vb6.atom5.com/ .

EDIT Il sito Web MMM non è attivo. Vedo qui che l'autore ha avuto problemi con il loro hosting e ha fornito un'altra posizione per ottenere Make My Manifest - scaricalo qui .

Se puoi controllare la creazione di oggetti puoi usare DirectCOM da http://www.thecommon.net /10.html

Tieni presente che se una delle DLL o OCX utilizzate sta creando altri oggetti COM in modo dinamico con chiamate CreateObject, tale riferimento non verrà archiviato nel file di progetto vbp e non otterrai il file manifest completo. Probabilmente dovrai catturare le creazioni di oggetti mentre l'applicazione è in esecuzione. L'applicazione Depends.exe può profilare l'applicazione in esecuzione e segnalare tutte le DLL utilizzate. Non so se esiste uno strumento in grado di trovare ulteriori informazioni relative a COM.

Altri suggerimenti

Esiste un'eccellente procedura dettagliata di cosa fare in questo articolo su MSDN: Attivazione senza registrazione dei componenti COM: una procedura dettagliata .

Make My Manifest può adattarsi all'associazione tardiva e all'associazione anticipata. Devi semplicemente aggiungere manualmente i riferimenti alle dipendenze in ritardo, per posizione del file o per ProgId.

Potresti guardare http://mmm4vb6.atom5.com/mmm-demo -1248.html per ulteriore aiuto nell'uso dell'utilità.

MakeMyManifest è ben parlato come uno strumento automatico per la creazione di manifesti per progetti VB6, non ho provato io stesso. DirectCOM ha anche dei fan, ancora una volta non l'ho provato.

EDIT Il sito Web MMM non è attivo. Vedo qui che l'autore ha avuto problemi con il loro hosting e ha fornito un'altra posizione per ottenere Make My Manifest - scaricalo qui .

Esiste una tecnica semi-automatica. È possibile creare i manifest con Visual Studio 2008 (è possibile utilizzare una versione gratuita come Visual Basic Express Edition). Quindi apportare un paio di modifiche a mano per rendere i manifest adatti all'uso da VB6. Vedi questa sezione di questo articolo MSDN per istruzioni dettagliate, ignora il resto dell'articolo relativo a ClickOnce.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top