Gina Sample: Graphical Identification and Authentication DLL

Click to open or copy the files for the Gina sample.

The Gina sample demonstrates the Gina-related functions.

To install the Gina DLL, copy it into %systemroot%\SYSTEM32, add a registry value of type REG_SZ named GinaDLL under the key \HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon, and reboot the machine.

WARNING! - It is possible to make your machine unusable if you install a replacement Gina and it fails. To avoid this situation, be sure that you have a method of accessing the %systemroot%\SYSTEM32 directory independent of the Windows NT® installation you are testing on.

If the Gina sample malfunctions, and you are not able to log on to fix the problem, you can recover by doing one of the following:

For more information see Gina.hlp.

Building SDK Samples

This sample uses the following keywords:

_vsnprintf; allocandcapturetext; attemptlogon; centerwindow; changepassworddlgproc; checkdlgbutton; closehandle; configdlgproc; copysid; createprocessasuser; debuglog; dllmain; dupstring; enablewindow; enddialog; errormessage; fflush; fopen; formatmessage; fprintf; getcurrentprocessid; getcurrentthreadid; getdebugkeyvalue; getdesktopwindow; getdlgitem; getdlgitemtext; getlasterror; getlengthsid; getlocaltime; getparent; getprocaddress; getprofileint; getprofilestring; getprofilestringa; getsystemmetrics; gettokeninformation; getwindowlong; getwindowrect; handlelvnotify; imagelist_addicon; imagelist_create; impersonateloggedonuser; initcommoncontrols; initdebugsupport; initializeaccountlist; initializeimagelists; initoptionsdialog; isdlgbuttonchecked; listview_getitem; listview_getnextitem; listview_insertcolumn; listview_insertitem; listview_setcolumnwidth; listview_setimagelist; listview_setitemtext; loaddebugparameters; loadicon; loadlibrary; loadminiaccounts; loadnetapi; localalloc; localfree; localrealloc; logevent; logondlginit; logondlgproc; logonuser; makeintresource; makelangid; messagebox; netuserchangepasswordfn; newuserdlgproc; openlogfile; optionsdlgproc; outputdebugstringa; populatelistview; postmessage; regclosekey; regcreatekeyex; regenumvalue; regopenkey; regqueryinfokey; regqueryvalueex; regsetvalueex; reverttoself; saveminiaccount; setdlgitemtext; setfocus; setforegroundwindow; setlasterror; setwindowlong; setwindowpos; setwindowtext; showwindow; shutdowndialoginit; shutdowndlgproc; sprintf; strcmpi; strtok; text; trytochangepassword; updateshutdownsettings; va_start; warning; wcscmp; wcscpy; wcslen; wcstok; welcomedlgproc; wlxactivateusershell; wlxdialogboxparam; wlxdisplaylockednotice; wlxdisplaysasnotice; wlxinitialize; wlxislockok; wlxislogoffok; wlxloggedonsas; wlxloggedoutsas; wlxlogoff; wlxnegotiate; wlxsasnotify; wlxshutdown; wlxusectrlaltdel; wlxwkstalockedsas; zeromemory