Ho un problema nel tentativo di eseguire Winapi::findFirstFile
in esecuzione sul server. Ho havve già provato a copiare il metodo sul WinapiServer di classe, e cambiando alcune linee, in questo modo:Prova ad utilizzare Winapi :: findFirstFile in esecuzione sul server
server static container findFirstFile(str filename)
{
InteropPermission interopPerm;
Binary data;
DLL _winApiDLL;
DLLFunction _findFirstFile;
;
interopPerm = new InteropPermission(InteropKind::DllInterop);
interopPerm.assert();
data = new Binary(592); // size of WIN32_FIND_DATA when sizeof(TCHAR)==2
_winApiDLL = new DLL(#KernelDLL);
_findFirstFile = new DLLFunction(_winApiDLL, 'FindFirstFileW');
_findFirstFile.returns(ExtTypes::DWord);
_findFirstFile.arg(ExtTypes::WString,ExtTypes::Pointer);
return [_findFirstFile.call(filename, data),data.wString(#offset44)];
}
Ma ora ho un altro tipo di errore La funzione 'FindFirstFileW' sulla DLL library 'KERNEL32' lancia un'eccezione
Questo perché sto eseguendo il metodo su un server x64. Chiunque abbia un'idea per risolvere questo problema?
Hai specificato l'esatto messaggio di errore dal registro delle informazioni? –
Che eccezione lancia? Forse AX lancia, dato che WinAPI non lancia eccezioni, restituisce i codici di errore. Prova 'WinAPIServer :: getLastError()' per ottenere il codice di errore –