Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
1.6 KiB

  1. /*++ BUILD Version: 0001
  2. *
  3. * WOW v1.0
  4. *
  5. * Copyright (c) 1992, Microsoft Corporation
  6. *
  7. * WKGTHUNK.H
  8. * WOW32 Generic Thunk Routines
  9. *
  10. * History:
  11. * Created 11-March-1993 by Matthew Felton (mattfe)
  12. --*/
  13. ULONG FASTCALL WK32ICallProc32W(PVDMFRAME pFrame);
  14. ULONG FASTCALL WK32GetVDMPointer32W(PVDMFRAME pFrame);
  15. ULONG FASTCALL WK32LoadLibraryEx32W(PVDMFRAME pFrame);
  16. ULONG FASTCALL WK32FreeLibrary32W(PVDMFRAME pFrame);
  17. ULONG FASTCALL WK32GetProcAddress32W(PVDMFRAME pFrame);
  18. /* ShellLink exported by W32Inst.dll (installshield dll)
  19. * takes a pointer to struct.
  20. * at offset 40, it has a pointer (pShellLinkArg->pszShortCut)
  21. * to a string. The string is actually several strings delimited by character 0x7f
  22. * in. Path where the shortcut needs to go is located after second 0x7f. Unfortunately
  23. * some apps use hardcoded paths valid for 9x only, so we attempt to correct them here.
  24. * see bug Whistler 177738
  25. */
  26. typedef struct _SHELLLINKARG{
  27. DWORD PlaceHolder[10];
  28. PSZ pszShortCut;
  29. } SHELLLINKARG,*PSHELLLINKARG;
  30. typedef ULONG (*PFNSHELLLINK)(PSHELLLINKARG pShellLinkArg);
  31. extern PVOID pfnGetVersionExA;
  32. extern PVOID pfnCreateDirectoryA;
  33. extern PVOID pfnLoadLibraryA;
  34. extern PFNSHELLLINK pfnShellLink;
  35. extern ULONG GtCompShellLink(PSHELLLINKARG pShellLinkArg);
  36. extern ULONG GtCompCreateDirectoryA(PSZ pszDirPath, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
  37. extern VOID GtCompHookImport(PBYTE pDllBase, PSZ pszModuleName, DWORD pfnOldFunc, DWORD pfnNewFunc);
  38. extern PSZ GtCompGetExportDirectory(PBYTE pDllBase);
  39. extern HMODULE GtCompLoadLibraryA(PSZ pszDllName);
  40. #ifdef WX86
  41. VOID
  42. TermWx86System(
  43. VOID
  44. );
  45. #endif