⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jwawownt32.pas

📁 比较全面的win32api开发包
💻 PAS
📖 第 1 页 / 共 2 页
字号:
begin
  GetProcedureAddress(_WOWGetVDMPointerUnfix, wow32lib, 'WOWGetVDMPointerUnfix');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGetVDMPointerUnfix]
  end;
end;
{$ELSE}
procedure WOWGetVDMPointerUnfix; external wow32lib name 'WOWGetVDMPointerUnfix';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalAlloc16: Pointer;

function WOWGlobalAlloc16;
begin
  GetProcedureAddress(_WOWGlobalAlloc16, wow32lib, 'WOWGlobalAlloc16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalAlloc16]
  end;
end;
{$ELSE}
function WOWGlobalAlloc16; external wow32lib name 'WOWGlobalAlloc16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalFree16: Pointer;

function WOWGlobalFree16;
begin
  GetProcedureAddress(_WOWGlobalFree16, wow32lib, 'WOWGlobalFree16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalFree16]
  end;
end;
{$ELSE}
function WOWGlobalFree16; external wow32lib name 'WOWGlobalFree16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalLock16: Pointer;

function WOWGlobalLock16;
begin
  GetProcedureAddress(_WOWGlobalLock16, wow32lib, 'WOWGlobalLock16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalLock16]
  end;
end;
{$ELSE}
function WOWGlobalLock16; external wow32lib name 'WOWGlobalLock16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalUnlock16: Pointer;

function WOWGlobalUnlock16;
begin
  GetProcedureAddress(_WOWGlobalUnlock16, wow32lib, 'WOWGlobalUnlock16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalUnlock16]
  end;
end;
{$ELSE}
function WOWGlobalUnlock16; external wow32lib name 'WOWGlobalUnlock16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalAllocLock16: Pointer;

function WOWGlobalAllocLock16;
begin
  GetProcedureAddress(_WOWGlobalAllocLock16, wow32lib, 'WOWGlobalAllocLock16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalAllocLock16]
  end;
end;
{$ELSE}
function WOWGlobalAllocLock16; external wow32lib name 'WOWGlobalAllocLock16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalUnlockFree16: Pointer;

function WOWGlobalUnlockFree16;
begin
  GetProcedureAddress(_WOWGlobalUnlockFree16, wow32lib, 'WOWGlobalUnlockFree16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalUnlockFree16]
  end;
end;
{$ELSE}
function WOWGlobalUnlockFree16; external wow32lib name 'WOWGlobalUnlockFree16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWGlobalLockSize16: Pointer;

function WOWGlobalLockSize16;
begin
  GetProcedureAddress(_WOWGlobalLockSize16, wow32lib, 'WOWGlobalLockSize16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWGlobalLockSize16]
  end;
end;
{$ELSE}
function WOWGlobalLockSize16; external wow32lib name 'WOWGlobalLockSize16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWYield16: Pointer;

procedure WOWYield16;
begin
  GetProcedureAddress(_WOWYield16, wow32lib, 'WOWYield16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWYield16]
  end;
end;
{$ELSE}
procedure WOWYield16; external wow32lib name 'WOWYield16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWDirectedYield16: Pointer;

procedure WOWDirectedYield16;
begin
  GetProcedureAddress(_WOWDirectedYield16, wow32lib, 'WOWDirectedYield16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWDirectedYield16]
  end;
end;
{$ELSE}
procedure WOWDirectedYield16; external wow32lib name 'WOWDirectedYield16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWHandle32: Pointer;

function WOWHandle32;
begin
  GetProcedureAddress(_WOWHandle32, wow32lib, 'WOWHandle32');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWHandle32]
  end;
end;
{$ELSE}
function WOWHandle32; external wow32lib name 'WOWHandle32';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWHandle16: Pointer;

function WOWHandle16;
begin
  GetProcedureAddress(_WOWHandle16, wow32lib, 'WOWHandle16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWHandle16]
  end;
end;
{$ELSE}
function WOWHandle16; external wow32lib name 'WOWHandle16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWCallback16: Pointer;

function WOWCallback16;
begin
  GetProcedureAddress(_WOWCallback16, wow32lib, 'WOWCallback16');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWCallback16]
  end;
end;
{$ELSE}
function WOWCallback16; external wow32lib name 'WOWCallback16';
{$ENDIF DYNAMIC_LINK}

{$IFDEF DYNAMIC_LINK}
var
  _WOWCallback16Ex: Pointer;

function WOWCallback16Ex;
begin
  GetProcedureAddress(_WOWCallback16Ex, wow32lib, 'WOWCallback16Ex');
  asm
    mov esp, ebp
    pop ebp
    jmp [_WOWCallback16Ex]
  end;
end;
{$ELSE}
function WOWCallback16Ex; external wow32lib name 'WOWCallback16Ex';
{$ENDIF DYNAMIC_LINK}

function HWND_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HWND);
end;

function HMENU_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HMENU);
end;

function HDWP_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HDWP);
end;

function HDROP_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HDROP);
end;

function HDC_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HDC);
end;

function HFONT_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HFONT);
end;

function HMETAFILE_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HMETAFILE);
end;

function HRGN_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HRGN);
end;

function HBITMAP_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HBITMAP);
end;

function HBRUSH_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HBRUSH);
end;

function HPALETTE_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HPALETTE);
end;

function HPEN_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HPEN);
end;

function HACCEL_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HACCEL);
end;

function HTASK_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_HTASK);
end;

function FULLHWND_32(h16: WORD): HANDLE;
begin
  Result := WOWHandle32(h16, WOW_TYPE_FULLHWND);
end;

function HWND_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HWND);
end;

function HMENU_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HMENU);
end;

function HDWP_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HDWP);
end;

function HDROP_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HDROP);
end;

function HDC_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HDC);
end;

function HFONT_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HFONT);
end;

function HMETAFILE_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HMETAFILE);
end;

function HRGN_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HRGN);
end;

function HBITMAP_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HBITMAP);
end;

function HBRUSH_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HBRUSH);
end;

function HPALETTE_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HPALETTE);
end;

function HPEN_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HPEN);
end;

function HACCEL_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HACCEL);
end;

function HTASK_16(h32: HANDLE): WORD;
begin
  Result := WOWHandle16(h32, WOW_TYPE_HTASK);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -