ISSkin是什么?ISSkin怎么使用?ISSkin是Code jock 公司出品的Inno Setup 皮膚插件,用于為Inno制作的安裝程序提供皮膚功能。ISSkin為您提供了靈活地創(chuàng)建自定義的視覺樣式,可以與創(chuàng)新安裝程序一起使用,將豐富的專業(yè)外觀添加到任何創(chuàng)新安裝程序安裝和最好的其免費。接下來武林網(wǎng)小編就給大家詳細說說在Unicode版Inno Setup中使用ISSkin給安裝程序添加皮膚的具體方法步驟,希望對大家有所幫助!
自Delphi發(fā)布2009之后,Inno Setup 開始出現(xiàn)支持Unicode編碼的版本,即5.3.x系列,并且官方同時提供Ansi和Unicode版本。
如果了解Delphi 2009的朋友,應(yīng)該就很了解這一版本對Unicode的支持,這里不多做介紹了。
Unicode版的Inno Setup腳本中會將所有字符串存儲為Unicode字符串,使用雙字節(jié)編碼,包括ASCII碼,如果調(diào)用為早期Ansi版開發(fā)的插件的話,涉及到字符串String,應(yīng)該顯式修改為AnsiString,這樣才能保證Unicode字符串正確轉(zhuǎn)換為Ansi字符串。
這里要解決由此而導(dǎo)致的問題。
現(xiàn)在的ISSkin最新版本是2.0.0,字符串使用Ansi編碼,所以需要將官方主頁上介紹的Code代碼段進行修改。
這里介紹使用ISSkin對Unicode版的Inno Setup制作的安裝程序添加皮膚。
第一步,在File段添加插件ISSkin的動態(tài)鏈接庫ISSkin.dll和皮膚文件
例如:
[Files]
Source: ISSkin.dll; DestDir: {app}; Flags: dontcopy
Source: Office2007.cjstyles; DestDir: {tmp}; Flags: dontcopy
第二步,在Code段聲明API,注意這里將原String修改為AnsiString
例如:
[Code]
procedure LoadSkin(lpszPath: AnsiString; lpszIniFileName: AnsiString);external 'LoadSkin@files:isskin.dll stdcall';
procedure UnloadSkin();external 'UnloadSkin@files:isskin.dll stdcall';
function ShowWindow(hWnd: Integer; uType: Integer): Integer;
external '[email protected] stdcall';
第三步,重載InitializeSetup和DeinitializeSetup兩個函數(shù)以調(diào)用ISSkin插件功能
例如:
procedure DeinitializeSetup();
begin
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
UnloadSkin();
end;
好了,現(xiàn)在截個圖吧,看看效果。
文章結(jié)束,以上就是關(guān)于如何使用ISSkin對Unicode版的Inno Setup制作的安裝程序添加皮膚的方法步驟,小編就給大家介紹到這里了,如果你覺得這篇文章還不錯,而且對你有幫助,那就趕快分享給更多的人看到吧!更多精彩,盡在武林網(wǎng)網(wǎng)站!
新聞熱點
疑難解答
圖片精選