📄 jwawinreg.pas
字号:
function RegDeleteKeyW; external advapi32 name 'RegDeleteKeyW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegDeleteKey: Pointer;
function RegDeleteKey;
begin
GetProcedureAddress(_RegDeleteKey, advapi32, 'RegDeleteKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegDeleteKey]
end;
end;
{$ELSE}
function RegDeleteKey; external advapi32 name 'RegDeleteKeyW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegDeleteKey: Pointer;
function RegDeleteKey;
begin
GetProcedureAddress(_RegDeleteKey, advapi32, 'RegDeleteKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegDeleteKey]
end;
end;
{$ELSE}
function RegDeleteKey; external advapi32 name 'RegDeleteKeyA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_RegDeleteValueA: Pointer;
function RegDeleteValueA;
begin
GetProcedureAddress(_RegDeleteValueA, advapi32, 'RegDeleteValueA');
asm
mov esp, ebp
pop ebp
jmp [_RegDeleteValueA]
end;
end;
{$ELSE}
function RegDeleteValueA; external advapi32 name 'RegDeleteValueA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegDeleteValueW: Pointer;
function RegDeleteValueW;
begin
GetProcedureAddress(_RegDeleteValueW, advapi32, 'RegDeleteValueW');
asm
mov esp, ebp
pop ebp
jmp [_RegDeleteValueW]
end;
end;
{$ELSE}
function RegDeleteValueW; external advapi32 name 'RegDeleteValueW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegDeleteValue: Pointer;
function RegDeleteValue;
begin
GetProcedureAddress(_RegDeleteValue, advapi32, 'RegDeleteValueW');
asm
mov esp, ebp
pop ebp
jmp [_RegDeleteValue]
end;
end;
{$ELSE}
function RegDeleteValue; external advapi32 name 'RegDeleteValueW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegDeleteValue: Pointer;
function RegDeleteValue;
begin
GetProcedureAddress(_RegDeleteValue, advapi32, 'RegDeleteValueA');
asm
mov esp, ebp
pop ebp
jmp [_RegDeleteValue]
end;
end;
{$ELSE}
function RegDeleteValue; external advapi32 name 'RegDeleteValueA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKeyA: Pointer;
function RegEnumKeyA;
begin
GetProcedureAddress(_RegEnumKeyA, advapi32, 'RegEnumKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKeyA]
end;
end;
{$ELSE}
function RegEnumKeyA; external advapi32 name 'RegEnumKeyA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKeyW: Pointer;
function RegEnumKeyW;
begin
GetProcedureAddress(_RegEnumKeyW, advapi32, 'RegEnumKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKeyW]
end;
end;
{$ELSE}
function RegEnumKeyW; external advapi32 name 'RegEnumKeyW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKey: Pointer;
function RegEnumKey;
begin
GetProcedureAddress(_RegEnumKey, advapi32, 'RegEnumKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKey]
end;
end;
{$ELSE}
function RegEnumKey; external advapi32 name 'RegEnumKeyW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKey: Pointer;
function RegEnumKey;
begin
GetProcedureAddress(_RegEnumKey, advapi32, 'RegEnumKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKey]
end;
end;
{$ELSE}
function RegEnumKey; external advapi32 name 'RegEnumKeyA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKeyExA: Pointer;
function RegEnumKeyExA;
begin
GetProcedureAddress(_RegEnumKeyExA, advapi32, 'RegEnumKeyExA');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKeyExA]
end;
end;
{$ELSE}
function RegEnumKeyExA; external advapi32 name 'RegEnumKeyExA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKeyExW: Pointer;
function RegEnumKeyExW;
begin
GetProcedureAddress(_RegEnumKeyExW, advapi32, 'RegEnumKeyExW');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKeyExW]
end;
end;
{$ELSE}
function RegEnumKeyExW; external advapi32 name 'RegEnumKeyExW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKeyEx: Pointer;
function RegEnumKeyEx;
begin
GetProcedureAddress(_RegEnumKeyEx, advapi32, 'RegEnumKeyExW');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKeyEx]
end;
end;
{$ELSE}
function RegEnumKeyEx; external advapi32 name 'RegEnumKeyExW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumKeyEx: Pointer;
function RegEnumKeyEx;
begin
GetProcedureAddress(_RegEnumKeyEx, advapi32, 'RegEnumKeyExA');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumKeyEx]
end;
end;
{$ELSE}
function RegEnumKeyEx; external advapi32 name 'RegEnumKeyExA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumValueA: Pointer;
function RegEnumValueA;
begin
GetProcedureAddress(_RegEnumValueA, advapi32, 'RegEnumValueA');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumValueA]
end;
end;
{$ELSE}
function RegEnumValueA; external advapi32 name 'RegEnumValueA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumValueW: Pointer;
function RegEnumValueW;
begin
GetProcedureAddress(_RegEnumValueW, advapi32, 'RegEnumValueW');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumValueW]
end;
end;
{$ELSE}
function RegEnumValueW; external advapi32 name 'RegEnumValueW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumValue: Pointer;
function RegEnumValue;
begin
GetProcedureAddress(_RegEnumValue, advapi32, 'RegEnumValueW');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumValue]
end;
end;
{$ELSE}
function RegEnumValue; external advapi32 name 'RegEnumValueW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegEnumValue: Pointer;
function RegEnumValue;
begin
GetProcedureAddress(_RegEnumValue, advapi32, 'RegEnumValueA');
asm
mov esp, ebp
pop ebp
jmp [_RegEnumValue]
end;
end;
{$ELSE}
function RegEnumValue; external advapi32 name 'RegEnumValueA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_RegFlushKey: Pointer;
function RegFlushKey;
begin
GetProcedureAddress(_RegFlushKey, advapi32, 'RegFlushKey');
asm
mov esp, ebp
pop ebp
jmp [_RegFlushKey]
end;
end;
{$ELSE}
function RegFlushKey; external advapi32 name 'RegFlushKey';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegGetKeySecurity: Pointer;
function RegGetKeySecurity;
begin
GetProcedureAddress(_RegGetKeySecurity, advapi32, 'RegGetKeySecurity');
asm
mov esp, ebp
pop ebp
jmp [_RegGetKeySecurity]
end;
end;
{$ELSE}
function RegGetKeySecurity; external advapi32 name 'RegGetKeySecurity';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegLoadKeyA: Pointer;
function RegLoadKeyA;
begin
GetProcedureAddress(_RegLoadKeyA, advapi32, 'RegLoadKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegLoadKeyA]
end;
end;
{$ELSE}
function RegLoadKeyA; external advapi32 name 'RegLoadKeyA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegLoadKeyW: Pointer;
function RegLoadKeyW;
begin
GetProcedureAddress(_RegLoadKeyW, advapi32, 'RegLoadKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegLoadKeyW]
end;
end;
{$ELSE}
function RegLoadKeyW; external advapi32 name 'RegLoadKeyW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegLoadKey: Pointer;
function RegLoadKey;
begin
GetProcedureAddress(_RegLoadKey, advapi32, 'RegLoadKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegLoadKey]
end;
end;
{$ELSE}
function RegLoadKey; external advapi32 name 'RegLoadKeyW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegLoadKey: Pointer;
function RegLoadKey;
begin
GetProcedureAddress(_RegLoadKey, advapi32, 'RegLoadKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegLoadKey]
end;
end;
{$ELSE}
function RegLoadKey; external advapi32 name 'RegLoadKeyA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
type
TRegNotifyChangeKeyValue = function (hKey: HKEY; bWatchSubtree: LongBool; dwNotifyFilter: DWORD; hEvent: HANDLE; fAsynchronus: LongBool): LONG; stdcall;
var
_RegNotifyChangeKeyValue: Pointer;
function RegNotifyChangeKeyValue(hKey: HKEY; bWatchSubtree: LongBool; dwNotifyFilter: DWORD; hEvent: HANDLE; fAsynchronus: LongBool): LONG;
begin
GetProcedureAddress(_RegNotifyChangeKeyValue, advapi32, 'RegNotifyChangeKeyValue');
if bWatchSubTree then
Result := TRegNotifyChangeKeyValue(_RegNotifyChangeKeyValue)(hKey, LongBool(1), dwNotifyFilter, hEvent, fAsynchronus)
else
Result := TRegNotifyChangeKeyValue(_RegNotifyChangeKeyValue)(hKey, LongBool(0), dwNotifyFilter, hEvent, fAsynchronus);
end;
{$IFDEF DYNAMIC_LINK}
var
_RegOpenKeyA: Pointer;
function RegOpenKeyA;
begin
GetProcedureAddress(_RegOpenKeyA, advapi32, 'RegOpenKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegOpenKeyA]
end;
end;
{$ELSE}
function RegOpenKeyA; external advapi32 name 'RegOpenKeyA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_RegOpenKeyW: Pointer;
function RegOpenKeyW;
begin
GetProcedureAddress(_RegOpenKeyW, advapi32, 'RegOpenKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegOpenKeyW]
end;
end;
{$ELSE}
function RegOpenKeyW; external advapi32 name 'RegOpenKeyW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_RegOpenKey: Pointer;
function RegOpenKey;
begin
GetProcedureAddress(_RegOpenKey, advapi32, 'RegOpenKeyW');
asm
mov esp, ebp
pop ebp
jmp [_RegOpenKey]
end;
end;
{$ELSE}
function RegOpenKey; external advapi32 name 'RegOpenKeyW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_RegOpenKey: Pointer;
function RegOpenKey;
begin
GetProcedureAddress(_RegOpenKey, advapi32, 'RegOpenKeyA');
asm
mov esp, ebp
pop ebp
jmp [_RegOpenKey]
end;
end;
{$ELSE}
function RegOpenKey; external advapi32 name 'RegOpenKeyA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -