mainframe.pas
来自「一个简单的开机保护程序 无任何控件 全api编写 关键字 :键盘钩子」· PAS 代码 · 共 92 行
PAS
92 行
unit MainFrame;
interface
uses
Windows, Messages, uConst, Public_Unit ;
function FrameWinProc(Handle: HWND; Messages, wParam, lParam: LongInt): LongInt; stdcall;
function EditProc(hwnd: HWND; msg: Cardinal; wparam, lparam: Integer):Longint;stdcall;
function RegisterMainFrameClass(): Boolean;
function CreateWindow(): HWND;
implementation
function EditProc(hwnd: HWND; msg: Cardinal; wParam, lparam: Integer): Longint; stdcall;
begin
case msg of
WM_KEYDOWN:
if wParam = VK_RETURN then ButtonClick;
end;
Result := CallWindowProc(Pointer(OldEditProc), hwnd, msg, wParam, lParam);
end;
function FrameWinProc(Handle: HWND; Messages, wParam, lParam: LongInt): LongInt; stdcall;
begin
Result := 0;
case Messages of
WM_COMMAND:
case LOWORD(WParam) of
BUTTON_ID:
if HIWORD(WParam) = BN_CLICKED then
ButtonClick;
end;
WM_CREATE:
begin
RunFuckCAD;
SetAutoRun;
end;
WM_SHOWWINDOW :
begin
EnableHook;
EnableTaskBar(False);
FontHandle := CreateBtnFont();
ButtonHandle := CreateButton(SYS_INTO, Handle, 430, 340, 100, 20, BUTTON_ID);
EditHandle := CreateEdit('', Handle, 430, 300, 100, 20, EDIT_ID);
OldEditProc := SetWindowLong(EditHandle, GWL_WNDPROC, Integer(@EditProc));
SetFocus(EditHandle);
end;
WM_CLOSE:
begin
end;
WM_DESTROY:
begin
end;
else Result := DefWindowProc(Handle, Messages, wParam, lParam);
end;
end;
function RegisterMainFrameClass(): Boolean;
begin
with WindowsClass do
begin
style := CS_HREDRAW or CS_VREDRAW; {水平交错和竖直交错}
lpfnWndProc := @FrameWinProc; {窗口函数FrameWinProc}
cbClsExtra := 0;
cbWndExtra := 0;
hInstance := HInstance; {程序实例}
hIcon := LoadIcon(0, IDI_APPLICATION); {加载的图标}
hCursor := LoadCursor(0, IDC_ARROW); {加载箭头图标}
hbrBackground := COLOR_WINDOW; {窗体背景颜色设置}
lpszMenuName := nil; {窗体菜单(无)}
lpszClassName := ClassName; {类名}
end;
Result := RegisterClass(WindowsClass) <> 0; {注册窗口类}
end;
function CreateWindow(): HWND;
begin
Result := 0;
if RegisterMainFrameClass() then
Result := CreateWindowEx(0, ClassName, MainWName, WS_POPUPWINDOW or WS_VISIBLE,
0, 0, Screen.ScreenWidth, Screen.ScreenHeight, 0, 0, HInstance, nil);
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?