⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unrealinst.iss

📁 Unreal irc 服务器源代码
💻 ISS
字号:
; UnrealIRCd Win32 Installation Script for My Inno Setup Extensions; Requires Inno Setup 4.1.6 and ISX 3.0.4 to work; #define USE_SSL; Uncomment the above line to package an SSL build#define USE_ZIP; Uncomment the above line to package with ZIP support#define USE_CURL; Uncomment the above line to package with libcurl support[Setup]AppName=UnrealIRCdAppVerName=UnrealIRCd3.2.6AppPublisher=UnrealIRCd TeamAppPublisherURL=http://www.unrealircd.comAppSupportURL=http://www.unrealircd.comAppUpdatesURL=http://www.unrealircd.comAppMutex=UnrealMutex,Global\UnrealMutexDefaultDirName={pf}\Unreal3.2DefaultGroupName=UnrealIRCdAllowNoIcons=yes#ifndef USE_SSLLicenseFile=.\gpl.rtf#elseLicenseFile=.\gplplusssl.rtf#endifCompression=lzmaSolidCompression=trueMinVersion=4.0.1111,4.0.1381OutputDir=../../[Tasks]Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"Name: "quicklaunchicon"; Description: "Create a &Quick Launch icon"; GroupDescription: "Additional icons:"; Flags: uncheckedName: "installservice"; Description: "Install as a &service (not for beginners)"; GroupDescription: "Service support:"; Flags: unchecked; MinVersion: 0,4.0Name: "installservice/startboot"; Description: "S&tart UnrealIRCd when Windows starts"; GroupDescription: "Service support:"; MinVersion: 0,4.0; Flags: exclusive uncheckedName: "installservice/startdemand"; Description: "Start UnrealIRCd on &request"; GroupDescription: "Service support:"; MinVersion: 0,4.0; Flags: exclusive uncheckedName: "installservice/crashrestart"; Description: "Restart UnrealIRCd if it &crashes"; GroupDescription: "Service support:"; Flags: unchecked; MinVersion: 0,5.0;#ifdef USE_SSLName: "makecert"; Description: "&Create certificate"; GroupDescription: "SSL options:";Name: "enccert"; Description: "&Encrypt certificate"; GroupDescription: "SSL options:"; Flags: unchecked;#endif[Files]Source: "..\..\wircd.exe"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\WIRCD.pdb"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\.CHANGES.NEW"; DestDir: "{app}"; DestName: "CHANGES.NEW.txt";Flags: ignoreversionSource: "..\..\.CONFIG.RANT"; DestDir: "{app}"; DestName: "CONFIG.RANT.txt"; Flags: ignoreversionSource: "..\..\.RELEASE.NOTES"; DestDir: "{app}"; DestName: "RELEASE.NOTES.txt"; Flags: ignoreversionSource: "..\..\.SICI"; DestDir: "{app}"; DestName: "SICI.txt"; Flags: ignoreversionSource: "..\..\badwords.channel.conf"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\badwords.message.conf"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\badwords.quit.conf"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\spamfilter.conf"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\dccallow.conf"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\Changes"; DestDir: "{app}"; DestName: "Changes.txt"; Flags: ignoreversionSource: "..\..\Changes.old"; DestDir: "{app}"; DestName: "Changes.old.txt"; Flags: ignoreversionSource: "..\..\Donation"; DestDir: "{app}"; DestName: "Donation.txt"; Flags: ignoreversionSource: "..\..\help.conf"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\LICENSE"; DestDir: "{app}"; DestName: "LICENSE.txt"; Flags: ignoreversionSource: "..\..\Unreal.nfo"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\doc\*.*"; DestDir: "{app}\doc"; Flags: ignoreversionSource: "..\..\doc\technical\*.*"; DestDir: "{app}\doc\technical"; Flags: ignoreversionSource: "..\..\aliases\*"; DestDir: "{app}\aliases"; Flags: ignoreversionSource: "..\..\networks\*"; DestDir: "{app}\networks"; Flags: ignoreversionSource: "..\..\unreal.exe"; DestDir: "{app}"; Flags: ignoreversion; MinVersion: 0,4.0Source: "..\modules\*.dll"; DestDir: "{app}\modules"; Flags: ignoreversionSource: "tre.dll"; DestDir: "{app}"; Flags: ignoreversion#ifdef USE_SSLSource: "c:\openssl\bin\openssl.exe"; DestDir: "{app}"; Flags: ignoreversionSource: "c:\openssl\bin\ssleay32.dll"; DestDir: "{app}"; Flags: ignoreversionSource: "c:\openssl\bin\libeay32.dll"; DestDir: "{app}"; Flags: ignoreversionSource: ".\makecert.bat"; DestDir: "{app}"; Flags: ignoreversionSource: ".\encpem.bat"; DestDir: "{app}"; Flags: ignoreversionSource: "..\ssl.cnf"; DestDir: "{app}"; Flags: ignoreversion#endif#ifdef USE_ZIPSource: "c:\dev\zlib\dll32\zlibwapi.dll"; DestDir: "{app}"; Flags: ignoreversion#endif#ifdef USE_SSL#ifdef USE_CURL; curl with ssl supportSource: "c:\dev\curl-ssl\lib\release\libcurl.dll"; DestDir: "{app}"; Flags: ignoreversionSource: "..\..\curl-ca-bundle.crt"; DestDir: "{app}"; Flags: ignoreversion#endif#else#ifdef USE_CURL; curl without ssl supportSource: "c:\dev\curl\lib\release\libcurl.dll"; DestDir: "{app}"; Flags: ignoreversion#endif#endifSource: isxdl.dll; DestDir: {tmp}; Flags: dontcopySource: "..\..\..\dbghelp.dll"; DestDir: "{app}"; Flags: ignoreversion[Dirs]Name: "{app}\tmp"[UninstallDelete]Type: files; Name: "{app}\DbgHelp.Dll"[Code]function isxdl_Download(hWnd: Integer; URL, Filename: PChar): Integer;external 'isxdl_Download@files:isxdl.dll stdcall';function isxdl_SetOption(Option, Value: PChar): Integer;external 'isxdl_SetOption@files:isxdl.dll stdcall';const dbgurl = 'http://www.unrealircd.com/downloads/DbgHelp.Dll';const crturl = 'http://www.unrealircd.com/downloads/msvcr70.dll';var didDbgDl,didCrtDl: Boolean;function NextButtonClick(CurPage: Integer): Boolean;vardbghelp,tmp,output: String;msvcrt: String;m: String;hWnd,answer: Integer;begin    if ((CurPage = wpReady)) then begin//      dbghelp := ExpandConstant('{sys}\DbgHelp.Dll');//      output := ExpandConstant('{app}\DbgHelp.Dll');      msvcrt := ExpandConstant('{sys}\msvcr70.Dll');//      GetVersionNumbersString(dbghelp,m);    if (NOT FileExists(msvcrt)) then begin      answer := MsgBox('Unreal requires the MS C Runtime 7.0 in order to run, do you wish to install it now?', mbConfirmation, MB_YESNO);      if answer = IDYES then begin        tmp := ExpandConstant('{tmp}\msvcr70.Dll');        isxdl_SetOption('title', 'Downloading msvcr70.dll');        hWnd := StrToInt(ExpandConstant('{wizardhwnd}'));        if isxdl_Download(hWnd, crturl, tmp) = 0 then begin          MsgBox('Download and installation of msvcr70.dll failed, the file must be manually installed. The file can be downloaded at http://www.unrealircd.com/downloads/mscvr70.dll', mbInformation, MB_OK);        end else          didCrtDl := true;      end else        MsgBox('In order for Unreal to properly function, you must manually install msvcr70.dll. The dll can be downloaded from http://www.unrealircd.com/downloads/msvcr70.dll', mbInformation, MB_OK);    end;//    if (NOT FileExists(output)) then begin//          if (NOT FileExists(dbghelp)) then//        m := StringOfChar('0',1);//      if (StrToInt(m[1]) < 5) then begin//        answer := MsgBox('DbgHelp.dll version 5.0 or higher is required to install Unreal, do you wish to install it now?', mbConfirmation, MB_YESNO);//        if answer = IDYES then begin//          tmp := ExpandConstant('{tmp}\dbghelp.dll');//          isxdl_SetOption('title', 'Downloading DbgHelp.dll');//          hWnd := StrToInt(ExpandConstant('{wizardhwnd}'));//          if isxdl_Download(hWnd, dbgurl, tmp) = 0 then begin//            MsgBox('Download and installation of DbgHelp.Dll failed, the file must be manually installed. The file can be downloaded at http://www.unrealircd.com/downloads/DbgHelp.Dll', mbInformation, MB_OK);//          end else//            didDbgDl := true;//        end else//        MsgBox('In order for Unreal to properly function you must manually install dbghelp.dll. The dll can be downloaded from http://www.unrealircd.com/downloads/DbgHelp.Dll', mbInformation, MB_OK);//      end;//    end;  end;  Result := true;end;procedure CurStepChanged(CurStep: TSetupStep);varinput,output: String;begin  if (CurStep = ssPostInstall) then begin    if (didDbgDl) then begin      input := ExpandConstant('{tmp}\dbghelp.dll');      output := ExpandConstant('{app}\dbghelp.dll');      FileCopy(input, output, true);    end;    if (didCrtDl) then begin      input := ExpandConstant('{tmp}\msvcr70.dll');      output := ExpandConstant('{sys}\msvcr70.dll');      FileCopy(input, output, true);    end;  end;end;[Icons]Name: "{group}\UnrealIRCd"; Filename: "{app}\wircd.exe"; WorkingDir: "{app}"Name: "{group}\Uninstall UnrealIRCd"; Filename: "{uninstallexe}"; WorkingDir: "{app}"#ifdef USE_SSLName: "{group}\Make Certificate"; Filename: "{app}\makecert.bat"; WorkingDir: "{app}"Name: "{group}\Encrypt Certificate"; Filename: "{app}\encpem.bat"; WorkingDir: "{app}"#endifName: "{group}\Documentation"; Filename: "{app}\doc\unreal32docs.html"; WorkingDir: "{app}"Name: "{userdesktop}\UnrealIRCd"; Filename: "{app}\wircd.exe"; WorkingDir: "{app}"; Tasks: desktopiconName: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\UnrealIRCd"; Filename: "{app}\wircd.exe"; WorkingDir: "{app}"; Tasks: quicklaunchicon[Run]Filename: "notepad"; Description: "View example.conf"; Parameters: "{app}\doc\example.conf"; Flags: postinstall skipifsilent shellexec runmaximizedFilename: "{app}\doc\unreal32docs.html"; Description: "View UnrealIRCd documentation"; Parameters: ""; Flags: postinstall skipifsilent shellexec runmaximizedFilename: "notepad"; Description: "View Release Notes"; Parameters: "{app}\RELEASE.NOTES.txt"; Flags: postinstall skipifsilent shellexec runmaximizedFilename: "notepad"; Description: "View Changes"; Parameters: "{app}\Changes.txt"; Flags: postinstall skipifsilent shellexec runmaximizedFilename: "{app}\unreal.exe"; Parameters: "install"; Flags: runminimized nowait; Tasks: installserviceFilename: "{app}\unreal.exe"; Parameters: "config startup manual"; Flags: runminimized nowait; Tasks: installservice/startdemandFilename: "{app}\unreal.exe"; Parameters: "config startup auto"; Flags: runminimized nowait; Tasks: installservice/startbootFilename: "{app}\unreal.exe"; Parameters: "config crashrestart 2"; Flags: runminimized nowait; Tasks: installservice/crashrestart#ifdef USE_SSLFilename: "{app}\makecert.bat"; Tasks: makecertFilename: "{app}\encpem.bat"; WorkingDir: "{app}"; Tasks: enccert#endif[UninstallRun]Filename: "{app}\unreal.exe"; Parameters: "uninstall"; Flags: runminimized; RunOnceID: "DelService"; Tasks: installservice

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -