Remove remaining Innosetup installer files.
Innosetup installer was removed earlier but some files related to it were not removed.
This commit is contained in:
parent
f82895c1f2
commit
357e76484d
Binary file not shown.
Before Width: | Height: | Size: 51 KiB |
Binary file not shown.
Before Width: | Height: | Size: 4.1 KiB |
|
@ -1,157 +0,0 @@
|
|||
// ----------------------------------------------------------------------------
|
||||
//
|
||||
// Inno Setup Ver: 5.2.1
|
||||
// Script Version: 1.3.1
|
||||
// Author: Jared Breland <jbreland@legroom.net>
|
||||
// Homepage: http://www.legroom.net/software
|
||||
//
|
||||
// Script Function:
|
||||
// Enable modification of system path directly from Inno Setup installers
|
||||
//
|
||||
// Instructions:
|
||||
// Copy modpath.iss to the same directory as your setup script
|
||||
//
|
||||
// Add this statement to your [Setup] section
|
||||
// ChangesEnvironment=yes
|
||||
//
|
||||
// Add this statement to your [Tasks] section
|
||||
// You can change the Description or Flags, but the Name must be modifypath
|
||||
// Name: modifypath; Description: &Add application directory to your system path; Flags: unchecked
|
||||
//
|
||||
// Add the following to the end of your [Code] section
|
||||
// setArrayLength must specify the total number of dirs to be added
|
||||
// Dir[0] contains first directory, Dir[1] contains second, etc.
|
||||
// function ModPathDir(): TArrayOfString;
|
||||
// var
|
||||
// Dir: TArrayOfString;
|
||||
// begin
|
||||
// setArrayLength(Dir, 1)
|
||||
// Dir[0] := ExpandConstant('{app}');
|
||||
// Result := Dir;
|
||||
// end;
|
||||
// #include "modpath.iss"
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
procedure ModPath();
|
||||
var
|
||||
oldpath: String;
|
||||
newpath: String;
|
||||
pathArr: TArrayOfString;
|
||||
aExecFile: String;
|
||||
aExecArr: TArrayOfString;
|
||||
i, d: Integer;
|
||||
pathdir: TArrayOfString;
|
||||
begin
|
||||
|
||||
// Get array of new directories and act on each individually
|
||||
pathdir := ModPathDir();
|
||||
for d := 0 to GetArrayLength(pathdir)-1 do begin
|
||||
|
||||
// Modify WinNT path
|
||||
if UsingWinNT() = true then begin
|
||||
|
||||
// Get current path, split into an array
|
||||
RegQueryStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'Path', oldpath);
|
||||
oldpath := oldpath + ';';
|
||||
i := 0;
|
||||
while (Pos(';', oldpath) > 0) do begin
|
||||
SetArrayLength(pathArr, i+1);
|
||||
pathArr[i] := Copy(oldpath, 0, Pos(';', oldpath)-1);
|
||||
oldpath := Copy(oldpath, Pos(';', oldpath)+1, Length(oldpath));
|
||||
i := i + 1;
|
||||
|
||||
// Check if current directory matches app dir
|
||||
if pathdir[d] = pathArr[i-1] then begin
|
||||
// if uninstalling, remove dir from path
|
||||
if IsUninstaller() = true then begin
|
||||
continue;
|
||||
// if installing, abort because dir was already in path
|
||||
end else begin
|
||||
abort;
|
||||
end;
|
||||
end;
|
||||
|
||||
// Add current directory to new path
|
||||
if i = 1 then begin
|
||||
newpath := pathArr[i-1];
|
||||
end else begin
|
||||
newpath := newpath + ';' + pathArr[i-1];
|
||||
end;
|
||||
end;
|
||||
|
||||
// Append app dir to path if not already included
|
||||
if IsUninstaller() = false then
|
||||
newpath := newpath + ';' + pathdir[d];
|
||||
|
||||
// Write new path
|
||||
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'Path', newpath);
|
||||
|
||||
// Modify Win9x path
|
||||
end else begin
|
||||
|
||||
// Convert to shortened dirname
|
||||
pathdir[d] := GetShortName(pathdir[d]);
|
||||
|
||||
// If autoexec.bat exists, check if app dir already exists in path
|
||||
aExecFile := 'C:\AUTOEXEC.BAT';
|
||||
if FileExists(aExecFile) then begin
|
||||
LoadStringsFromFile(aExecFile, aExecArr);
|
||||
for i := 0 to GetArrayLength(aExecArr)-1 do begin
|
||||
if IsUninstaller() = false then begin
|
||||
// If app dir already exists while installing, abort add
|
||||
if (Pos(pathdir[d], aExecArr[i]) > 0) then
|
||||
abort;
|
||||
end else begin
|
||||
// If app dir exists and = what we originally set, then delete at uninstall
|
||||
if aExecArr[i] = 'SET PATH=%PATH%;' + pathdir[d] then
|
||||
aExecArr[i] := '';
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
// If app dir not found, or autoexec.bat didn't exist, then (create and) append to current path
|
||||
if IsUninstaller() = false then begin
|
||||
SaveStringToFile(aExecFile, #13#10 + 'SET PATH=%PATH%;' + pathdir[d], True);
|
||||
|
||||
// If uninstalling, write the full autoexec out
|
||||
end else begin
|
||||
SaveStringsToFile(aExecFile, aExecArr, False);
|
||||
end;
|
||||
end;
|
||||
|
||||
// Write file to flag modifypath was selected
|
||||
// Workaround since IsTaskSelected() cannot be called at uninstall and AppName and AppId cannot be "read" in Code section
|
||||
if IsUninstaller() = false then
|
||||
SaveStringToFile(ExpandConstant('{app}') + '\uninsTasks.txt', WizardSelectedTasks(False), False);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure CurStepChanged(CurStep: TSetupStep);
|
||||
begin
|
||||
if CurStep = ssPostInstall then
|
||||
if IsTaskSelected('modifypath') then
|
||||
ModPath();
|
||||
end;
|
||||
|
||||
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
|
||||
var
|
||||
appdir: String;
|
||||
selectedTasks: String;
|
||||
begin
|
||||
appdir := ExpandConstant('{app}')
|
||||
if CurUninstallStep = usUninstall then begin
|
||||
if LoadStringFromFile(appdir + '\uninsTasks.txt', selectedTasks) then
|
||||
if Pos('modifypath', selectedTasks) > 0 then
|
||||
ModPath();
|
||||
DeleteFile(appdir + '\uninsTasks.txt')
|
||||
end;
|
||||
end;
|
||||
|
||||
function NeedRestart(): Boolean;
|
||||
begin
|
||||
if IsTaskSelected('modifypath') and not UsingWinNT() then begin
|
||||
Result := True;
|
||||
end else begin
|
||||
Result := False;
|
||||
end;
|
||||
end;
|
|
@ -1,69 +0,0 @@
|
|||
InnoSetup Windows installer for the cppcheck
|
||||
--------------------------------------------
|
||||
|
||||
NOTE: This installer is OLD and not maintained anymore. See readme.txt for
|
||||
information about new WiX installer!
|
||||
|
||||
Windows installer for both command line cppcheck and for QT-based GUI. All
|
||||
needed runtimes and libraries are installed.
|
||||
|
||||
Command line cppccheck shortcuts are created to start cmd.exe in installation
|
||||
folder. So when the user selects start menu/desktop icon he gets command prompt
|
||||
in cppcheck folder.
|
||||
|
||||
Get the InnoSetup from:
|
||||
http://www.innosetup.com/
|
||||
Be sure to download the 'QuickStart Pack' as it installs some nice tools
|
||||
like ISTool and preprocessor support.
|
||||
|
||||
Files the installer needs:
|
||||
/COPYING
|
||||
/readme.txt
|
||||
/AUTHORS
|
||||
/src/Release/cppcheck.exe
|
||||
/win_installer/icon.bmp
|
||||
/win_installer/LargeLogo.bmp
|
||||
/win_installer/
|
||||
/gui/release/gui.exe
|
||||
/gui/cppcheck_de.qm
|
||||
/gui/cppcheck_en.qm
|
||||
/gui/cppcheck_fi.qm
|
||||
/gui/cppcheck_pl.qm
|
||||
/gui/cppcheck_ru.qm
|
||||
/gui/cppcheck_se.qm
|
||||
|
||||
NOTE: Remember to convert COPYING and AUTHORS to Windows EOL format! Otherwise
|
||||
Windows Notepad (default viewer) can't show then properly.
|
||||
|
||||
VS Runtime files:
|
||||
Copy following files to same folder:
|
||||
- Microsoft.VC90.CRT.manifest
|
||||
- msvcp90.dll
|
||||
- msvcr90.dll
|
||||
and modify RuntimesFolder -macro in begin of cppcheck.iss to point to the
|
||||
folder where files are. You can find runtime files from VS installation or from
|
||||
net.
|
||||
|
||||
NOTE: To make local installation of runtimes to work you must remove the
|
||||
publicKeyToken="blahblah" -attribute from the manifest file.
|
||||
|
||||
QT Libraries:
|
||||
Visual Studio is used to build the GUI executable. And QT must be build with VS
|
||||
also. When building QT make sure you build release targets!
|
||||
|
||||
Copy following files to same RuntimesFolder than VS runtime files:
|
||||
- QtCore4.dll
|
||||
- QtGui4.dll
|
||||
- QtXml4.dll
|
||||
|
||||
Creating the installer executable:
|
||||
#1 Open the ISTool and load cppcheck.iss
|
||||
#2 Update the release version number:
|
||||
- look for line "#define AppVersion"
|
||||
#3 Check all files are present:
|
||||
- from menu: Project / Verify files...
|
||||
#4 Compile the installer
|
||||
- from menu: Project / Compile Setup
|
||||
|
||||
If compilation succeeds, the installer executable is created into /Build
|
||||
-folder. The filename is cppcheck-[version]-setup.exe.
|
Loading…
Reference in New Issue