| imho.ws |
![]() |
|
|
|
# 1 |
|
Member
Регистрация: 18.04.2002
Адрес: Ф туманах Новосибирска...
Сообщения: 378
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Вызов функции из DLL
Есть DLL, гордо содержащая одну функцию:
Код:
int Func(char name[257])
{
MessageBox(NULL, name, "Dll", MB_OK);
return -1;
}
Код:
HMODULE DLL;
DLL = LoadLibrary("func.dll");
void (*Func)(LPSTR);
(FARPROC &)Func = GetProcAddress(DLL, "Func");
Func("<text>");
FreeLibrary(DLL);
return 0;
Но если я пытаюсь вызвать функцию при помощи RunDll32.exe: rundll32 func.dll,Func "qwe" появляется ошибка. При этом в функцию не передается строка, а если я буду передавать int то функция будет прекрасно работать. Так вот, почему не получается так передать строку (хотя в некоторые виндовские функции при вызове из DLL можно передавать строки)? |
|
|
|
|
# 2 |
|
Guest
Сообщения: n/a
|
Как писать функции, которые можно вызывать через rundll:
http://support.microsoft.com/default...b;en-us;164787 |