Ciao,
Mi sono reso conto che due punti della tua risposta non mi erano chiari
scrivere le chiamate con la compilazione condizionale
COMPILARE a 32 o 64BIT
Considera che non ho mai rilasciato DB compilati ma DB normali con la struttura protetta attraverso il richiamo ad una maschera nascosta.
Comunque dopo un'attenta "esegesi" ho capito che mi mancava qualche tassello per capire la tua proposta.
Ho cercato di documentarmi un pò e sono arrivato alla seguente conclusione.
Dovrei dichiarare le API nidificandole all'interno di un'istruzione if else end. Le dovrei comunque lasciare nel modulo ad hoc in cui si trovano.
Ho trovato in rete le costanti da testare per spiegare al programma quale dichiarazione compilare:
If VBA7 then
' Code is running in the new VBA7 editor
#If Win64 then
' Code is running in 64-bit version of Microsoft Office
#Else
' Code is running in 32-bit version of Microsoft Office
#End If
#Else
' Code is running in VBA version 6 or earlier
#End If
Naturalmente dovrei indagare le API che sfrutto per individuarne le versioni a 64 bit.
Poi dovrei compilare il DB in due versioni a 32 e a 64 bit una da distribuire ai colleghi con office 365 e una da distribuire agli altri.
Sono sulla strada giusta?
A livello pratico però mi pongo due problemi
1) quando ho provato a scrivere in un modulo di access 2007 una declare con ptrsafe il codice mi ha dato errore ( la dichiarazione è diventata rossa). Se inserisco la declare all'interno di una if potrebbe non darmi errore?
2) per testare il funzionamento del codice a 64 bit ho per forza bisogno di un office a 64 bit o posso installare un run time access 64 bit sul mio PC con access 2007?
Grazie ancora
Andrea