mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-07-25 06:54:43 +00:00
Added moved files to git.
This commit is contained in:
@@ -0,0 +1,118 @@
|
||||
#define MyAppShortName "Telegram"
|
||||
#define MyAppName "Telegram Desktop"
|
||||
#define MyAppPublisher "Telegram Messenger LLP"
|
||||
#define MyAppURL "https://tdesktop.com"
|
||||
#define MyAppExeName "Telegram.exe"
|
||||
#define MyAppId "53F49750-6209-4FBF-9CA8-7A333C87D1ED"
|
||||
|
||||
[Setup]
|
||||
; NOTE: The value of AppId uniquely identifies this application.
|
||||
; Do not use the same AppId value in installers for other applications.
|
||||
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
|
||||
AppId={{{#MyAppId}}
|
||||
AppName={#MyAppName}
|
||||
AppVersion={#MyAppVersion}
|
||||
AppPublisher={#MyAppPublisher}
|
||||
AppPublisherURL={#MyAppURL}
|
||||
AppSupportURL={#MyAppURL}
|
||||
AppUpdatesURL={#MyAppURL}
|
||||
DefaultDirName={userappdata}\{#MyAppName}
|
||||
DefaultGroupName={#MyAppName}
|
||||
AllowNoIcons=yes
|
||||
OutputDir={#SourcePath}..\..\Win32\Deploy
|
||||
OutputBaseFilename=tsetup.{#MyAppVersionFull}
|
||||
SetupIconFile={#SourcePath}..\Resources\art\icon256.ico
|
||||
UninstallDisplayIcon={app}\Telegram.exe
|
||||
Compression=lzma
|
||||
SolidCompression=yes
|
||||
DisableStartupPrompt=yes
|
||||
PrivilegesRequired=lowest
|
||||
VersionInfoVersion={#MyAppVersion}.0
|
||||
|
||||
[Languages]
|
||||
Name: "english"; MessagesFile: "compiler:Default.isl"
|
||||
|
||||
[Tasks]
|
||||
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"
|
||||
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; OnlyBelowVersion: 0,6.1
|
||||
|
||||
[Files]
|
||||
Source: "{#SourcePath}..\..\Win32\Deploy\Telegram.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "{#SourcePath}..\..\Win32\Deploy\Updater.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
||||
|
||||
[Icons]
|
||||
Name: "{group}\{#MyAppShortName}"; Filename: "{app}\{#MyAppExeName}"
|
||||
Name: "{group}\{cm:UninstallProgram,{#MyAppShortName}}"; Filename: "{uninstallexe}"
|
||||
Name: "{userdesktop}\{#MyAppShortName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
|
||||
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppShortName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon
|
||||
|
||||
[Run]
|
||||
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppShortName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
|
||||
|
||||
[UninstallDelete]
|
||||
Type: files; Name: "{app}\data"
|
||||
Type: files; Name: "{app}\data_config"
|
||||
Type: files; Name: "{app}\log.txt"
|
||||
Type: filesandordirs; Name: "{app}\DebugLogs"
|
||||
Type: filesandordirs; Name: "{app}\tupdates"
|
||||
Type: filesandordirs; Name: "{app}\tdata"
|
||||
Type: filesandordirs; Name: "{app}\tcache"
|
||||
Type: filesandordirs; Name: "{app}\tdumps"
|
||||
Type: dirifempty; Name: "{app}"
|
||||
Type: files; Name: "{userappdata}\{#MyAppName}\data"
|
||||
Type: files; Name: "{userappdata}\{#MyAppName}\data_config"
|
||||
Type: files; Name: "{userappdata}\{#MyAppName}\log.txt"
|
||||
Type: filesandordirs; Name: "{userappdata}\{#MyAppName}\DebugLogs"
|
||||
Type: filesandordirs; Name: "{userappdata}\{#MyAppName}\tupdates"
|
||||
Type: filesandordirs; Name: "{userappdata}\{#MyAppName}\tdata"
|
||||
Type: filesandordirs; Name: "{userappdata}\{#MyAppName}\tcache"
|
||||
Type: filesandordirs; Name: "{userappdata}\{#MyAppName}\tdumps"
|
||||
Type: dirifempty; Name: "{userappdata}\{#MyAppName}"
|
||||
|
||||
[Languages]
|
||||
Name: "it"; MessagesFile: "compiler:Languages\Italian.isl"
|
||||
Name: "es"; MessagesFile: "compiler:Languages\Spanish.isl"
|
||||
Name: "de"; MessagesFile: "compiler:Languages\German.isl"
|
||||
Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl"
|
||||
Name: "pt"; MessagesFile: "compiler:Languages\Portuguese.isl"
|
||||
|
||||
[Code]
|
||||
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
|
||||
var ResultCode: Integer;
|
||||
begin
|
||||
if CurUninstallStep = usUninstall then
|
||||
begin
|
||||
ShellExec('', ExpandConstant('{app}\{#MyAppExeName}'), '-cleanup', '', SW_SHOW, ewWaitUntilTerminated, ResultCode);
|
||||
end;
|
||||
end;
|
||||
|
||||
const CSIDL_DESKTOPDIRECTORY = $0010;
|
||||
CSIDL_COMMON_DESKTOPDIRECTORY = $0019;
|
||||
|
||||
procedure CurStepChanged(CurStep: TSetupStep);
|
||||
var ResultCode: Integer;
|
||||
HasOldKey: Boolean;
|
||||
HasNewKey: Boolean;
|
||||
HasOldLnk: Boolean;
|
||||
HasNewLnk: Boolean;
|
||||
UserDesktopLnk: String;
|
||||
CommonDesktopLnk: String;
|
||||
begin
|
||||
if CurStep = ssPostInstall then
|
||||
begin
|
||||
HasNewKey := RegKeyExists(HKEY_CURRENT_USER, 'Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1') or RegKeyExists(HKEY_CURRENT_USER, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1');
|
||||
HasOldKey := RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1') or RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{#MyAppId}}_is1');
|
||||
UserDesktopLnk := ExpandFileName(GetShellFolderByCSIDL(CSIDL_DESKTOPDIRECTORY, False) + '\{#MyAppShortName}.lnk');
|
||||
CommonDesktopLnk := ExpandFileName(GetShellFolderByCSIDL(CSIDL_COMMON_DESKTOPDIRECTORY, False) + '\{#MyAppShortName}.lnk');
|
||||
HasNewLnk := FileExists(UserDesktopLnk);
|
||||
HasOldLnk := FileExists(CommonDesktopLnk) and (UserDesktopLnk <> CommonDesktopLnk);
|
||||
if (HasOldKey and HasNewKey) or (HasOldLnk and HasNewLnk) then
|
||||
begin
|
||||
if (GetWindowsVersion >= $06000000) then // Vista or later
|
||||
ShellExec('runas', ExpandConstant('{app}\{#MyAppExeName}'), '-fixprevious', '', SW_SHOW, ewWaitUntilTerminated, ResultCode)
|
||||
else
|
||||
ShellExec('', ExpandConstant('{app}\{#MyAppExeName}'), '-fixprevious', '', SW_SHOW, ewWaitUntilTerminated, ResultCode);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
Reference in New Issue
Block a user