diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f2eee79 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/*/Out/ +/*/Output/ \ No newline at end of file diff --git a/InnoSetupBeauty02/Output/控制台_1.0.0.exe b/InnoSetupBeauty02/Output/控制台_1.0.0.exe deleted file mode 100644 index 6edc5d6..0000000 Binary files a/InnoSetupBeauty02/Output/控制台_1.0.0.exe and /dev/null differ diff --git a/InnoSetupBeauty02/include/botva2.iss b/InnoSetupBeauty02/include/botva2.iss index 073cbd0..39cdee2 100644 --- a/InnoSetupBeauty02/include/botva2.iss +++ b/InnoSetupBeauty02/include/botva2.iss @@ -1,29 +1,73 @@ -//这里存放的是botva2的函数声明 +[Code] + +// botva2.dll 中的函数声明 -[Code] TYPE TBtnEventProc = PROCEDURE(h : HWND); TPBProc = FUNCTION(h : hWnd; Msg, wParam, lParam : LONGINT) : LONGINT; -FUNCTION ImgLoad(h : HWND; FileName : PAnsiChar; Left, Top, Width, Height : INTEGER; Stretch, IsBkg : BOOLEAN) : LONGINT; EXTERNAL 'ImgLoad@files:botva2.dll STDCALL DELAYLOAD'; +// 图像加载函数 +FUNCTION ImgLoad(h : HWND; FileName : PAnsiChar; Left, Top, Width, Height : INTEGER; Stretch, IsBkg : BOOLEAN) : LONGINT; EXTERNAL 'ImgLoad@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置图像可见性 PROCEDURE ImgSetVisibility(img : LONGINT; Visible : BOOLEAN); EXTERNAL 'ImgSetVisibility@files:botva2.dll STDCALL DELAYLOAD'; + +// 应用图像变化 PROCEDURE ImgApplyChanges(h : HWND); EXTERNAL 'ImgApplyChanges@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置图像位置 PROCEDURE ImgSetPosition(img : LONGINT; NewLeft, NewTop, NewWidth, NewHeight : INTEGER); EXTERNAL 'ImgSetPosition@files:botva2.dll STDCALL DELAYLOAD'; + +// 释放图像资源 PROCEDURE ImgRelease(img : LONGINT); EXTERNAL 'ImgRelease@files:botva2.dll STDCALL DELAYLOAD'; + +// 从图像创建窗体 PROCEDURE CreateFormFromImage(h : HWND; FileName : PAnsiChar); EXTERNAL 'CreateFormFromImage@files:botva2.dll STDCALL DELAYLOAD'; -PROCEDURE gdipShutdown(); EXTERNAL 'gdipShutdown@files:botva2.dll STDCALL DELAYLOAD'; -FUNCTION WrapBtnCallback(Callback : TBtnEventProc; ParamCount : INTEGER) : LONGWORD; EXTERNAL 'wrapcallback@files:innocallback.dll STDCALL DELAYLOAD'; -FUNCTION BtnCreate(hParent : HWND; Left, Top, Width, Height : INTEGER; FileName : PAnsiChar; ShadowWidth : INTEGER; IsCheckBtn : BOOLEAN) : HWND; EXTERNAL 'BtnCreate@files:botva2.dll STDCALL DELAYLOAD'; + +// 关闭 GDI+(图形设备接口) +PROCEDURE gdipShutdown(); EXTERNAL 'gdipShutdown@files:botva2.dll STDCALL DELAYLOAD'; + +// 按钮事件回调的包装函数 +FUNCTION WrapBtnCallback(Callback : TBtnEventProc; ParamCount : INTEGER) : LONGWORD; EXTERNAL 'wrapcallback@files:innocallback.dll STDCALL DELAYLOAD'; + +// 创建按钮 +FUNCTION BtnCreate(hParent : HWND; Left, Top, Width, Height : INTEGER; FileName : PAnsiChar; ShadowWidth : INTEGER; IsCheckBtn : BOOLEAN) : HWND; EXTERNAL 'BtnCreate@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置按钮可见性 PROCEDURE BtnSetVisibility(h : HWND; Value : BOOLEAN); EXTERNAL 'BtnSetVisibility@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置按钮事件 PROCEDURE BtnSetEvent(h : HWND; EventID : INTEGER; Event : LONGWORD); EXTERNAL 'BtnSetEvent@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置按钮启用状态 PROCEDURE BtnSetEnabled(h : HWND; Value : BOOLEAN); EXTERNAL 'BtnSetEnabled@files:botva2.dll STDCALL DELAYLOAD'; -FUNCTION BtnGetChecked(h : HWND) : BOOLEAN; EXTERNAL 'BtnGetChecked@files:botva2.dll STDCALL DELAYLOAD'; + +// 获取按钮选中状态 +FUNCTION BtnGetChecked(h : HWND) : BOOLEAN; EXTERNAL 'BtnGetChecked@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置按钮选中状态 PROCEDURE BtnSetChecked(h : HWND; Value : BOOLEAN); EXTERNAL 'BtnSetChecked@files:botva2.dll STDCALL DELAYLOAD'; -PROCEDURE BtnSetPosition(h : HWND; NewLeft, NewTop, NewWidth, NewHeight : INTEGER); EXTERNAL 'BtnSetPosition@files:botva2.dll STDCALL DELAYLOAD'; -FUNCTION SetWindowLong(h : HWnd; Index : INTEGER; NewLong : LONGINT) : LONGINT; EXTERNAL 'SetWindowLongA@user32.dll STDCALL'; -FUNCTION PBCallBack(P : TPBProc; ParamCount : INTEGER) : LONGWORD; EXTERNAL 'wrapcallback@files:innocallback.dll STDCALL DELAYLOAD'; -FUNCTION CallWindowProc(lpPrevWndFunc : LONGINT; h : HWND; Msg : UINT; wParam, lParam : LONGINT) : LONGINT; EXTERNAL 'CallWindowProcA@user32.dll STDCALL'; + +// 设置按钮位置 +PROCEDURE BtnSetPosition(h : HWND; NewLeft, NewTop, NewWidth, NewHeight : INTEGER); EXTERNAL 'BtnSetPosition@files:botva2.dll STDCALL DELAYLOAD'; + +// 设置窗口长整数值 +FUNCTION SetWindowLong(h : HWnd; Index : INTEGER; NewLong : LONGINT) : LONGINT; EXTERNAL 'SetWindowLongA@user32.dll STDCALL'; + +// 回调函数的包装函数 +FUNCTION PBCallBack(P : TPBProc; ParamCount : INTEGER) : LONGWORD; EXTERNAL 'wrapcallback@files:innocallback.dll STDCALL DELAYLOAD'; + +// 调用窗口过程 +FUNCTION CallWindowProc(lpPrevWndFunc : LONGINT; h : HWND; Msg : UINT; wParam, lParam : LONGINT) : LONGINT; EXTERNAL 'CallWindowProcA@user32.dll STDCALL'; + +// 设置图像可见部分 PROCEDURE ImgSetVisiblePart(img : LONGINT; NewLeft, NewTop, NewWidth, NewHeight : INTEGER); EXTERNAL 'ImgSetVisiblePart@files:botva2.dll STDCALL DELAYLOAD'; -FUNCTION ReleaseCapture() : LONGINT; EXTERNAL 'ReleaseCapture@user32.dll STDCALL'; -FUNCTION CreateRoundRectRgn(p1, p2, p3, p4, p5, p6 : INTEGER) : THandle; EXTERNAL 'CreateRoundRectRgn@gdi32.dll STDCALL'; -FUNCTION SetWindowRgn(h : HWND; hRgn : THandle; bRedraw : BOOLEAN) : INTEGER; EXTERNAL 'SetWindowRgn@user32.dll STDCALL'; \ No newline at end of file + +// 释放鼠标捕获 +FUNCTION ReleaseCapture() : LONGINT; EXTERNAL 'ReleaseCapture@user32.dll STDCALL'; + +// 创建圆角矩形区域 +FUNCTION CreateRoundRectRgn(p1, p2, p3, p4, p5, p6 : INTEGER) : THandle; EXTERNAL 'CreateRoundRectRgn@gdi32.dll STDCALL'; + +// 设置窗口区域 +FUNCTION SetWindowRgn(h : HWND; hRgn : THandle; bRedraw : BOOLEAN) : INTEGER; EXTERNAL 'SetWindowRgn@user32.dll STDCALL'; diff --git a/InnoSetupBeauty02/tmp/background_welcome.png b/InnoSetupBeauty02/tmp/background_welcome.png index 78ee29a..c886819 100644 Binary files a/InnoSetupBeauty02/tmp/background_welcome.png and b/InnoSetupBeauty02/tmp/background_welcome.png differ diff --git a/MyProg/Out/mysetup.exe b/MyProg/Out/mysetup.exe deleted file mode 100644 index a933813..0000000 Binary files a/MyProg/Out/mysetup.exe and /dev/null differ