De registerwaarde AppInit_DLLs en Windows 95

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 134655 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Samenvatting

Windows 95 biedt geen ondersteuning voor het laden van een DLL-bestand in een proces adres de ruimte van de registerwaarde AppInit_DLLs. In Windows NT voor elk proces dat wordt uitgevoerd, Windows NT laadt de dll-bestanden die worden vermeld de De registerwaarde AppInit_DLLs in de adresruimte van het proces. Voor vergelijkbare functionaliteit in Windows 95, kunt u een haakje van het hele systeem implementeren. Dit artikel hoe voorbeeld doen.

Meer informatie

Een haakje systeemomvattende implementeren, moet u ervoor zorgen dat de functie hooked Er bestaat in een DLL (callbackfunctie). Wanneer deze functie is genoemd, wijst het besturingssysteem de hooked DLL naar het doel de adresruimte van de toepassing. De werkelijke functie hooked en werkt als onderdeel van de doeltoepassing.

Er zijn in feite twee stappen betrokken bij het maken van een haak systeemomvattende:
  1. Een DLL-bestand maken met een geëxporteerde functie die wordt gebruikt als de haakprocedure functie. De voorbeeldfunctie die volgt op is de functie terugbellen gemodelleerd na een callback-functie voor het implementeren van een WH_KEYBOARD hook voor het hele systeem:
          // Trap keyboard messages
          __declspec(dllexport) LRESULT CALLBACK HookFunction(
                           int code,
                           WPARAM wParam,
                           LPARAM lParam)
          {
             char szVCode[50];
    
             //display the virtual key code trapped
             sprintf(szVCode, "Virtual Key code: %lx", wParam);
             MessageBox(NULL, szVCode,"Key stroke", MB_OK);
                    :
                    :
          }
    
       The associated .def file for this DLL might resemble this:
    
          LIBRARY      HOOK
    
          EXPORTS
             HookFunction
    						
  2. Het hele systeem haak installeren. Installeren van de haak moet het DLL-bestand worden geladen van de haakfunctie adres opgehaald en SetWindowsHookEx met de functie adres genoemd. Hier volgt een voorbeeld:
          // add system-wide hook
          hHookDll = LoadLibrary("hook");
          hHookProc = (HOOKPROC) GetProcAddress(hHookDll, "HookFunction");
    
          // Install keyboard hook to trap all keyboard messages
          hSystemHook =  SetWindowsHookEx(WH_KEYBOARD,hHookProc,hHookDll,0);
    						
    Na de toepassing van de haak systeemomvattende Zorg het hooking proces als volgt ongedaan:
          // Remove the hook and unload the DLL used for the hooking process
          UnhookWindowsHookEx(hSystemHook);
          FreeLibrary(hHookDll);
    						

Eigenschappen

Artikel ID: 134655 - Laatste beoordeling: donderdag 12 juli 2012 - Wijziging: 4.0
De informatie in dit artikel is van toepassing op:
  • Microsoft Win32-API op de volgende platformen
    • Microsoft Windows 98 Standard Edition
    • Microsoft Windows Millennium Edition
Trefwoorden: 
kbcode kbkernbase kbregistry kbmt KB134655 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende: 134655
Vrijwaring inhoud KB-artikelen over niet langer ondersteunde producten
Dit artikel heeft betrekking op producten waarvoor Microsoft geen ondersteuning meer biedt. Daarom wordt dit artikel alleen in de huidige vorm aangeboden en wordt het niet meer bijgewerkt.

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com