Форум программистов, компьютерный форум CyberForum.ru

Обертка GinaDLL (msgina.dll) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переключение кодовых страниц в Windows? http://www.cyberforum.ru/cpp-beginners/thread465887.html
Некоторая программма под виндами принимает (вводит с клавиатуры) символы в обычной русской кодировке (1251), после этого программа передает введенную информацию устройству работаещему в псевдо русской кодировке. Устройство принимающее информацию не иммеет возможности перекодировать информацию, то есть данную функцию должна выполнить программа, но доступа к исходному коду программы нет. Каким...
C++ Тонкости работы ползунков Я обрабатываю следующие сообщения: if(nSBCode == SB_THUMBPOSITION || nSBCode == SB_THUMBTRACK || nSBCode == SB_PAGERIGHT || nSBCode == SB_PAGELEFT || nSBCode == SB_LINELEFT || nSBCode == SB_LINERIGHT ) { m_text1.Format('%ld',nPos); UpdateData(false); }Когда я передвигаю сам ползунок, то m_text1 приобретает нужные мне значения. Когда же я просто кликаю на полосе прокрутки, то... http://www.cyberforum.ru/cpp-beginners/thread465880.html
Линия кода 'S':'C' C++
cho delaet vtorya polovina coda etoi lini (posle ?): (strcmp(prokey1,'No Provider')==0) ? 'S':'C' ili she (strcmp(prokey1,'No Provider')==0) ? 'S':account_no
Где взять RXLib C++
Подскажите где взять RXLib. Несколько раз видел ссылки на www.rxlib.com, но, видимо, я там чего-то не понял. Где сама библиотека. На этом сайте куча всяких ссылок. И все не по делу. Где она там конкретно лежит.
C++ Кто что знает о Artificial Intelligence (Искуственный интеллект)? http://www.cyberforum.ru/cpp-beginners/thread465841.html
Тут ктонить знает про Artificial Intelligence (Искуственный интеллект)? есть тут такие кому знакома эта тема???? BOT LINK: http://library.thinkquest.org/2705/
C++ Почему select блокируется? Ответьте, пожалуйста. Вот строчки: fd_set read_set; timeval to; to.tv_sec=2000;// Зихера? to.tv_usec=2000;// Или тут? do{ FD_ZERO(&read_set); FD_SET(mother_sock,&read_set); int i=select(0,&read_set,NULL,NULL,&to); // Селект блокируется.Есть сильное подозрение, что я неправильно работаю со структурой timeval. Спраки по ней нет нигде. подробнее

Показать сообщение отдельно
Снежок
Сообщений: n/a

Обертка GinaDLL (msgina.dll) - C++

12.03.2008, 16:52. Просмотров 858. Ответов 0
Метки (Все метки)

Написал обертку GinaDLL. Мне нужно отловить события авторизации пользователя, завершения сессии, перезагрузки и завершения работы.
Все ловится если используется SAS, т.е. когда пользователь выполняет необходимыве действия через Ctrl+Alt+Del.
Но я никак немогу добиться того что бы события отлавливались когда пользователь завершает сессию и работу через меню Пуск.

Подскажите как нужно сделать.

VOID WINAPI PKP(ULONG NumEv, PWSTR AUserName)
{
//эта процедурка вызывает из другой длл метод который просто добавляет строку в лог-файл.
if(!hExtPKP) hExtPKP=LoadLibrary('ExtPKP.dll');
hPKPProc=(PKPWinlogonNotif)::GetProcAddress(hExtPKP,'PKPWinlogonNotif');
if (hPKPProc) hPKPProc(NumEv,AUserName);
hPKPProc=NULL;
FreeLibrary(hExtPKP);
hExtPKP=NULL;

}

//Используемые методы-обертки

BOOL WINAPI WlxIsLogoffOk(PVOID pWlxContext)
{
PKP(ULONG(100+8),NULL);//до
return Wlxtbl.WlxIsLogoffOk(pWlxContext);
PKP(ULONG(100+8),NULL);//после
//лог-файл остается неизмененным
}

int WINAPI WlxLoggedOnSAS(PVOID pWlxContext,DWORD dwSasType,PVOID pReserved)
{
int iRet;
iRet=Wlxtbl.WlxLoggedOnSAS(pWlxContext,dwSasType,pReserved);
PKP((ULONG)iRet,NULL);
return iRet;
//выполняется только при использовании Ctrl+Alt+Del, что и понятно
}

int WINAPI WlxLoggedOutSAS(PVOID pWlxContext,DWORD dwSasType,PLUID pAuthenticationId,PSID pLogonSid,PDWORD pdwOptions,PHANDLE phToken,PWLX_MPR_NOTIFY_INFO pNprNotifyInfo,PVOID *pProfile)
{
int iRet;
iRet = Wlxtbl.WlxLoggedOutSAS(pWlxContext,dwSasType,pAuthenticationId,pLogonSid,pdwOptions,phToken,pNprNotifyInfo,pProfile);
PKP((ULONG)iRet,pNprNotifyInfo->pszUserName);
return iRet;
//выполняется только при использовании Ctrl+Alt+Del, что и понятно
}

VOID WINAPI WlxLogoff(PVOID pWlxContext)
{
PKP(ULONG(100+11),NULL);//до
Wlxtbl.WlxLogoff(pWlxContext);
PKP(ULONG(100+11),NULL);//после
//лог-файл остается неизмененным
}

VOID WINAPI WlxShutdown(PVOID pWlxContext,DWORD ShutdownType)
{
PKP(ULONG(100+17),NULL);//до
Wlxtbl.WlxShutdown(pWlxContext,ShutdownType);
PKP(ULONG(100+17),NULL);//после
//лог-файл остается неизмененным
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru