me gustaría evitar la carga de archivos DLL maliciosos que pueden ser posibles a través del acceso del directorio de trabajo actual como se describe en http://msdn.microsoft.com/en-us/library/ff919712(VS.85).aspxCómo llamar a la función WinAPI SetDllDirectory() en Delphi?
La solución implementada en nuestras aplicaciones C++ era hacer una llamada API de Windows a SetDllDirectory (""), que eliminaría efectivamente el directorio de trabajo actual de la ruta de búsqueda de carga DLL de Windows. Sin embargo, parece que esta solución no está disponible para nuestras aplicaciones Delphi porque la función SetDllDirectory() no existe.
¿Existe una llamada equivalente en Delphi que haga lo mismo que SetDllDirectory ("")? ¡Gracias!
Si desea utilizar una función en la API de Windows (es decir, una función ** en Windows **, que se ve igual en cualquier idioma) que no está declarada en 'Windows.pas', en general es realmente fácil de declararlo usted mismo. Todo lo que necesita es la información en MSDN, donde se especifican los tipos de datos del argumento y el resultado, al igual que el archivo DLL. En la mayoría de los casos, los tipos utilizados allí se pueden usar incluso en Delphi (como HBRUSH). , HWND, etc.), o puede usar un tipo equivalente (como 'cardinal' o' THWND'). Simplemente no te olvides de establecer la convención de llamadas a 'stdcall'. –