Ho riscontrato e risolto questo errore utilizzando the .NET library for WinSCP da MS Access VBA.
Era successo:
- Una funzione
UploadSomething
per la connessione a un server SFTP e l'upload di un file ha funzionato bene.
- All'interno della funzione
UploadSomething
cambiato l'opzione "supporto riprendere" con questo codice: myTransferOptions.ResumeSupport.State = TransferResumeSupportState.TransferResumeSupportState_Off
Dopo la modifica, il codice lavorato come desiderato. Tuttavia, nel codice chiamatoUploadSomething
, l'errore 49 è stato lanciato dopo che la funzione era terminata.
L'errore si verifica sia quando si passa attraverso il codice utilizzando il debugger che quando si esegue contemporaneamente all'esterno del debugger. La ricompilazione del progetto non ha funzionato per me.
Che lavoro ha fatto è stato questo:
- Rimuovere il riferimento al componente COM
- Aggiungere il riferimento al componente COM
- Ricompilate
Stai chiamando una funzione nativa dichiarata con l'istruzione "Dichiara", giusto? Potresti condividere sia la dichiarazione che la chiamata con noi? –
L'ho risolto ... tutto quello che dovevo fare è avviare l'accesso con/decompilare e poi ricompilare e l'errore è andato via. – Malcolm
Per soluzioni a questo errore in Excel, vedi il mio post in: [Errore di runtime 49, Bad DLL convenzione di chiamata] [1] [1]: http://stackoverflow.com/questions/15758834/runtime -error-49-bad-dll-calling-convention – pstraton