added auto completion to the directory page

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4236 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2005-09-02 11:35:45 +00:00
parent 7ecd1d3185
commit 86ccf99b80
5 changed files with 49 additions and 35 deletions

View file

@ -379,16 +379,12 @@ char * NSISCALL my_GetTempFileName(char *buf, const char *dir)
void NSISCALL MoveFileOnReboot(LPCTSTR pszExisting, LPCTSTR pszNew)
{
BOOL fOk = 0;
HMODULE hLib=GetModuleHandle("KERNEL32.dll");
if (hLib)
typedef BOOL (WINAPI *mfea_t)(LPCSTR lpExistingFileName,LPCSTR lpNewFileName,DWORD dwFlags);
mfea_t mfea;
mfea=(mfea_t) myGetProcAddress("KERNEL32.dll","MoveFileExA");
if (mfea)
{
typedef BOOL (WINAPI *mfea_t)(LPCSTR lpExistingFileName,LPCSTR lpNewFileName,DWORD dwFlags);
mfea_t mfea;
mfea=(mfea_t) GetProcAddress(hLib,"MoveFileExA");
if (mfea)
{
fOk=mfea(pszExisting, pszNew, MOVEFILE_DELAY_UNTIL_REBOOT|MOVEFILE_REPLACE_EXISTING);
}
fOk=mfea(pszExisting, pszNew, MOVEFILE_DELAY_UNTIL_REBOOT|MOVEFILE_REPLACE_EXISTING);
}
if (!fOk)
@ -789,3 +785,14 @@ WIN32_FIND_DATA * NSISCALL file_exists(char *buf)
}
return NULL;
}
void * NSISCALL myGetProcAddress(char *dll, char *func)
{
HMODULE hModule = GetModuleHandle(dll);
if (!hModule)
hModule = LoadLibrary(dll);
if (!hModule)
return NULL;
return GetProcAddress(hModule, func);
}