📄 jwawinsvc.pas
字号:
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_CreateService: Pointer;
function CreateService;
begin
GetProcedureAddress(_CreateService, advapi32, 'CreateServiceW');
asm
mov esp, ebp
pop ebp
jmp [_CreateService]
end;
end;
{$ELSE}
function CreateService; external advapi32 name 'CreateServiceW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_CreateService: Pointer;
function CreateService;
begin
GetProcedureAddress(_CreateService, advapi32, 'CreateServiceA');
asm
mov esp, ebp
pop ebp
jmp [_CreateService]
end;
end;
{$ELSE}
function CreateService; external advapi32 name 'CreateServiceA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_DeleteService: Pointer;
function DeleteService;
begin
GetProcedureAddress(_DeleteService, advapi32, 'DeleteService');
asm
mov esp, ebp
pop ebp
jmp [_DeleteService]
end;
end;
{$ELSE}
function DeleteService; external advapi32 name 'DeleteService';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_EnumDependentServicesA: Pointer;
function EnumDependentServicesA;
begin
GetProcedureAddress(_EnumDependentServicesA, advapi32, 'EnumDependentServicesA');
asm
mov esp, ebp
pop ebp
jmp [_EnumDependentServicesA]
end;
end;
{$ELSE}
function EnumDependentServicesA; external advapi32 name 'EnumDependentServicesA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_EnumDependentServicesW: Pointer;
function EnumDependentServicesW;
begin
GetProcedureAddress(_EnumDependentServicesW, advapi32, 'EnumDependentServicesW');
asm
mov esp, ebp
pop ebp
jmp [_EnumDependentServicesW]
end;
end;
{$ELSE}
function EnumDependentServicesW; external advapi32 name 'EnumDependentServicesW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_EnumDependentServices: Pointer;
function EnumDependentServices;
begin
GetProcedureAddress(_EnumDependentServices, advapi32, 'EnumDependentServicesW');
asm
mov esp, ebp
pop ebp
jmp [_EnumDependentServices]
end;
end;
{$ELSE}
function EnumDependentServices; external advapi32 name 'EnumDependentServicesW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_EnumDependentServices: Pointer;
function EnumDependentServices;
begin
GetProcedureAddress(_EnumDependentServices, advapi32, 'EnumDependentServicesA');
asm
mov esp, ebp
pop ebp
jmp [_EnumDependentServices]
end;
end;
{$ELSE}
function EnumDependentServices; external advapi32 name 'EnumDependentServicesA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatusA: Pointer;
function EnumServicesStatusA;
begin
GetProcedureAddress(_EnumServicesStatusA, advapi32, 'EnumServicesStatusA');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatusA]
end;
end;
{$ELSE}
function EnumServicesStatusA; external advapi32 name 'EnumServicesStatusA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatusW: Pointer;
function EnumServicesStatusW;
begin
GetProcedureAddress(_EnumServicesStatusW, advapi32, 'EnumServicesStatusW');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatusW]
end;
end;
{$ELSE}
function EnumServicesStatusW; external advapi32 name 'EnumServicesStatusW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatus: Pointer;
function EnumServicesStatus;
begin
GetProcedureAddress(_EnumServicesStatus, advapi32, 'EnumServicesStatusW');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatus]
end;
end;
{$ELSE}
function EnumServicesStatus; external advapi32 name 'EnumServicesStatusW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatus: Pointer;
function EnumServicesStatus;
begin
GetProcedureAddress(_EnumServicesStatus, advapi32, 'EnumServicesStatusA');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatus]
end;
end;
{$ELSE}
function EnumServicesStatus; external advapi32 name 'EnumServicesStatusA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatusExA: Pointer;
function EnumServicesStatusExA;
begin
GetProcedureAddress(_EnumServicesStatusExA, advapi32, 'EnumServicesStatusExA');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatusExA]
end;
end;
{$ELSE}
function EnumServicesStatusExA; external advapi32 name 'EnumServicesStatusExA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatusExW: Pointer;
function EnumServicesStatusExW;
begin
GetProcedureAddress(_EnumServicesStatusExW, advapi32, 'EnumServicesStatusExW');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatusExW]
end;
end;
{$ELSE}
function EnumServicesStatusExW; external advapi32 name 'EnumServicesStatusExW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatusEx: Pointer;
function EnumServicesStatusEx;
begin
GetProcedureAddress(_EnumServicesStatusEx, advapi32, 'EnumServicesStatusExW');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatusEx]
end;
end;
{$ELSE}
function EnumServicesStatusEx; external advapi32 name 'EnumServicesStatusExW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_EnumServicesStatusEx: Pointer;
function EnumServicesStatusEx;
begin
GetProcedureAddress(_EnumServicesStatusEx, advapi32, 'EnumServicesStatusExA');
asm
mov esp, ebp
pop ebp
jmp [_EnumServicesStatusEx]
end;
end;
{$ELSE}
function EnumServicesStatusEx; external advapi32 name 'EnumServicesStatusExA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceKeyNameA: Pointer;
function GetServiceKeyNameA;
begin
GetProcedureAddress(_GetServiceKeyNameA, advapi32, 'GetServiceKeyNameA');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceKeyNameA]
end;
end;
{$ELSE}
function GetServiceKeyNameA; external advapi32 name 'GetServiceKeyNameA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceKeyNameW: Pointer;
function GetServiceKeyNameW;
begin
GetProcedureAddress(_GetServiceKeyNameW, advapi32, 'GetServiceKeyNameW');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceKeyNameW]
end;
end;
{$ELSE}
function GetServiceKeyNameW; external advapi32 name 'GetServiceKeyNameW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceKeyName: Pointer;
function GetServiceKeyName;
begin
GetProcedureAddress(_GetServiceKeyName, advapi32, 'GetServiceKeyNameW');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceKeyName]
end;
end;
{$ELSE}
function GetServiceKeyName; external advapi32 name 'GetServiceKeyNameW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceKeyName: Pointer;
function GetServiceKeyName;
begin
GetProcedureAddress(_GetServiceKeyName, advapi32, 'GetServiceKeyNameA');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceKeyName]
end;
end;
{$ELSE}
function GetServiceKeyName; external advapi32 name 'GetServiceKeyNameA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceDisplayNameA: Pointer;
function GetServiceDisplayNameA;
begin
GetProcedureAddress(_GetServiceDisplayNameA, advapi32, 'GetServiceDisplayNameA');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceDisplayNameA]
end;
end;
{$ELSE}
function GetServiceDisplayNameA; external advapi32 name 'GetServiceDisplayNameA';
{$ENDIF DYNAMIC_LINK}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceDisplayNameW: Pointer;
function GetServiceDisplayNameW;
begin
GetProcedureAddress(_GetServiceDisplayNameW, advapi32, 'GetServiceDisplayNameW');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceDisplayNameW]
end;
end;
{$ELSE}
function GetServiceDisplayNameW; external advapi32 name 'GetServiceDisplayNameW';
{$ENDIF DYNAMIC_LINK}
{$IFDEF UNICODE}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceDisplayName: Pointer;
function GetServiceDisplayName;
begin
GetProcedureAddress(_GetServiceDisplayName, advapi32, 'GetServiceDisplayNameW');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceDisplayName]
end;
end;
{$ELSE}
function GetServiceDisplayName; external advapi32 name 'GetServiceDisplayNameW';
{$ENDIF DYNAMIC_LINK}
{$ELSE}
{$IFDEF DYNAMIC_LINK}
var
_GetServiceDisplayName: Pointer;
function GetServiceDisplayName;
begin
GetProcedureAddress(_GetServiceDisplayName, advapi32, 'GetServiceDisplayNameA');
asm
mov esp, ebp
pop ebp
jmp [_GetServiceDisplayName]
end;
end;
{$ELSE}
function GetServiceDisplayName; external advapi32 name 'GetServiceDisplayNameA';
{$ENDIF DYNAMIC_LINK}
{$ENDIF}
{$IFDEF DYNAMIC_LINK}
var
_LockServiceDatabase: Pointer;
function LockServiceDatabase;
begin
GetProcedureAddress(_LockServiceDatabase, advapi32, 'LockServiceDatabase');
asm
mov esp, ebp
pop ebp
jmp [_LockServiceDatabase]
end;
end;
{$ELSE}
function LockServiceDatabase; external advapi32 name 'LockServiceDatabase';
{$ENDIF DYNAMIC_LINK}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -