AppInit_DLLs Registry Value and Windows 95

Seleccione idioma Seleccione idioma
Id. de artículo: 134655 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

Resumen

Windows 95 no admite la carga de un archivo DLL en espacio de direcciones del proceso mediante el uso del valor de registro AppInit_DLLs. En Windows NT, para cada proceso ejecutado, Windows carga las DLL enumeradas en el valor de registro AppInit_DLLs en espacio de direcciones del proceso. Para una funcionalidad similar en Windows 95, puede implementar un enlace de todo el sistema. Este artículo muestra por ejemplo cómo hacerlo.

Más información

Para implementar un enlace de todo el sistema, debe asegurarse de que existe la función enlazada (función de devolución de llamada) en un archivo DLL. A continuación, se llama cuando esta función, el sistema operativo asigna el archivo de DLL enlazado al espacio de dirección de la aplicación de destino. A continuación real enlazado función, funciona como parte del proceso de la aplicación de destino.

No hay esencialmente dos pasos implica la creación de un enlace de todo el sistema:
  1. Crear un archivo DLL con una función exportada que sirve como función de enlace. En función de ejemplo que sigue, la función de devolución de llamada se modela después de una función de devolución de llamada necesaria para implementar un WH_KEYBOARD todo el sistema enlace:
          // 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. Instalar el enlace de todo el sistema. Para instalar el enlace, la DLL se debe cargar, dirección de la función de enlace recuperada, y SetWindowsHookEx llamado con la dirección de la función. Éste es un ejemplo:
          // 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);
    						
    cuando la aplicación haya finalizado con el enlace de todo el sistema, asegúrese de deshacer el proceso de enlace como sigue:
          // Remove the hook and unload the DLL used for the hooking process
          UnhookWindowsHookEx(hSystemHook);
          FreeLibrary(hHookDll);
    						

Propiedades

Id. de artículo: 134655 - Última revisión: martes, 01 de marzo de 2005 - Versión: 3.2
La información de este artículo se refiere a:
  • Microsoft Win32 Application Programming Interface sobre las siguientes plataformas
    • Microsoft Windows 95
    • Microsoft Windows 98 Standard Edition
    • Microsoft Windows Millennium Edition
Palabras clave: 
kbmt kbcode kbkernbase kbregistry KB134655 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 134655
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

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