Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Нужна помощь з переменой ( static BOOL bDHook = TRUE; )

Пользователь удален Гуру (4827), закрыт 17 лет назад
Дополнен 17 лет назад
....
staticBOOLbDHook = TRUE;
....
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
hInst = hModule;

Initcondition();

if (bDHook == TRUE)
{
bDHook = FALSE;
DataHook();
}
....
void DataHook(void)
{
static char lpDLLName[MAX_PATH], lpTEMName[MAX_PATH];

/* получаем полный адрес к нашему модулю */
GetModuleFileName((HMODULE)hInst, lpDLLName, MAX_PATH);

/* а етой манипуляцыей получаем папку в котором наш модуль */
strncat(lpDATName, lpDLLName, strlen(lpDLLName) - strlen("Hook.dll"));

/* дополняем папку Data */
strcat(lpDATName, "Data\\");

/* ну а здесь создаём имя временого файда */
GetTempFileName(lpDATName, "_", 0, lpTEMName);

/* соединяем ето всё */
strcat(lpDATName, lpTEMName);

MessageBox(NULL, lpDATName,"MessageBox",MB_OK);
}

Не работает етот кусок:

if (bDHook == TRUE)
{
bDHook = FALSE;
DataHook();
}

Переменая bDHook получила значение FALSE почему у миня
DataHook(); продолжатет вызыватса.. Ет што получаетса
библиотека выгружаетса све переменые пропадаю, потом
загружаетса и bDHook опять TRUE
(та вродибы не должно быть так яже постояно
отслежываю нажатия кнопок для Internet Explorer)

Ещё маленький вопрос какая "API" создаёт папку..
(в Visual Basic пользовалса встроеной MkDir(путь))
Лучший ответ
Иван_t999t Знаток (479) 17 лет назад
чё ты хочешь?
Источник: я
Остальные ответы
rst rst Профи (505) 17 лет назад
Ну и что тута непонятного? Разъясняю... Переменная типа BOOL имеет значение или истина или ложь... TRUE or FALSE...
ЗЫ
В данном случае ей присвоено значени ИСТИНА т.е. TRUE
Похожие вопросы