Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C++ & VB6]Usare le DLL compilate in VB nel C++ e viceversa

    Ciao a tutti! Mi stò imbattendo in un problema che cerco di risolvere da tempo, ovvero quello che ho scritto nel titolo di questa discussione. Lo voglio fare perchè ci sono delle cose che non riesco a fare in C++ ma riesco a farle in visual basic o viceversa. Ho provato tutti i modi possibili e immaginabili ma senza successo mi potete aiutare?

  2. #2
    L'uso delle DLL prevede molte "insidie" (nomi decorati, convenzioni di chiamata, uso di clausole particolari per l'esportazione delle funzioni o più in generale delle risorse condivise, incompatibilità generate da alcuni compilatori, ...), dunque non è possibile rispondere alla tua domanda se non fornisci ulteriori informazioni su cosa stai cercando di fare e soprattutto su come stai cercando di farlo.
    "Se riesci a passare un pomeriggio assolutamente inutile in modo assolutamente inutile, hai imparato a vivere."

  3. #3
    Originariamente inviato da pallinopinco
    L'uso delle DLL prevede molte "insidie" (nomi decorati, convenzioni di chiamata, uso di clausole particolari per l'esportazione delle funzioni o più in generale delle risorse condivise, incompatibilità generate da alcuni compilatori, ...), dunque non è possibile rispondere alla tua domanda se non fornisci ulteriori informazioni su cosa stai cercando di fare e soprattutto su come stai cercando di farlo.
    Ad esempio se in una dll in vb6 faccio:
    Sub Main()
    MessageBox "prova"
    End Sub

    In C++ come faccio a richiamare la funzione in modo che mi esegua la messagebox del visual basic? Questo è un esempio stupido, anche perchè le messagebox in C++ le sò usare, ma è una prova per poi entrare nelle cose più complesse. Uso il compilatore Dev-C++

  4. #4
    Usare dll scritte in C++ da VB è relativamente semplice (basta esportare le funzioni dal progetto C++ con un file .def in modo da non avere nomi decorati ed importarle con l'istruzione Declare in VB6), mentre usare le dll generate da Visual Basic 6 in C++ è decisamente più complicato: VB6 infatti può generare solamente dll COM (a meno di usare trucchi strani), per cui devi essere in grado di lavorare con COM in C++ per poterle utilizzare.
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.