Inno Setup制作安裝包,安裝給win加環境變量


; 加環境變量,開啟,下面一行
ChangesEnvironment=yes

; 加環境變量wbrj變量名,{app}\project\bin變量值,{app}\后接文件名,{app}表示安裝路徑。下面一行,{olddata};原來的值上拼接
Root: HKLM; Subkey: “SYSTEM\CurrentControlSet\Control\Session Manager\Environment”; ValueType: string; ValueName: “Path”; ValueData: “{olddata};{app}\project\bin”; Flags: preservestringtype
完成

下面是完整代碼

; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!#define MyAppName "萬邦軟件"
#define MyAppVersion "2.0"
#define MyAppPublisher "dade"
#define MyAppExeName "start.exe"
#define MyAppAssocName MyAppName + " File"
#define MyAppAssocExt ".myp"
#define MyAppAssocKey StringChange(MyAppAssocName, " ", "") + MyAppAssocExt[Setup]
; 加環境變量,開啟,下面一行
ChangesEnvironment=yes
; 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={{75473B0E-602D-4715-BC72-8436F7A2991A}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
DefaultDirName={autopf}\wbrj
ChangesAssociations=yes
DisableProgramGroupPage=yes
; Uncomment the following line to run in non administrative install mode (install for current user only.)
;PrivilegesRequired=lowest
OutputBaseFilename="萬邦軟件"
Compression=lzma
SolidCompression=yes
WizardStyle=modern[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked[Files]
Source: "E:\bushu\dadenb\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\bushu\dadenb\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files[Registry]
; 加環境變量wbrj變量名,{app}\\project\bin變量值,{app}\后接文件名,{app}表示安裝路徑。下面一行,{olddata};原來的值上拼接
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: string; ValueName: "Path"; ValueData: "{olddata};{app}\\project\bin"; Flags: preservestringtype
Root: HKA; Subkey: "Software\Classes\{#MyAppAssocExt}\OpenWithProgids"; ValueType: string; ValueName: "{#MyAppAssocKey}"; ValueData: ""; Flags: uninsdeletevalue
Root: HKA; Subkey: "Software\Classes\{#MyAppAssocKey}"; ValueType: string; ValueName: ""; ValueData: "{#MyAppAssocName}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\{#MyAppAssocKey}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#MyAppExeName},0"
Root: HKA; Subkey: "Software\Classes\{#MyAppAssocKey}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#MyAppExeName}"" ""%1"""
Root: HKA; Subkey: "Software\Classes\Applications\{#MyAppExeName}\SupportedTypes"; ValueType: string; ValueName: ".myp"; ValueData: ""[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent

添加管理員權限

添加管理員權限1、在[Setup]節點添加 PrivilegesRequired=admin2、進入安裝目錄,找到文件SetupLdr.e32,這是一個二進制配置文件,需要用到ResHacker.exe這個工具修改找到<requestedExecutionLevel level="asInvoker" uiAccess="false"/></requestedPrivileges>,修改為<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/></requestedPrivileges>刪除管理員權限1、在[Setup]節點添加 PrivilegesRequired=none 或者 PrivilegesRequired=lowest2、在[Setup]節點修改 DefaultDirName(安裝路徑)的值,默認可能是DefaultDirName={pf}\{#MyAppName},不要帶{pf}, {win}, {sys}這些變量值,比如設置成DefaultDirName={localappdata}\{#MyAppName}

因為說的比較籠統,所以網上還是不斷有人問同樣的問題。這里將以上添加管理員權限的過程細化一下。

1.找到Inno Setup的安裝路徑,如D:\Program Files\Inno Setup 5,找到SetupLdr.e32文件

2.下載一個eXeScope.exe并打開SetupLdr.e32文件,如圖:
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/65545.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/65545.shtml
英文地址,請注明出處:http://en.pswp.cn/web/65545.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Golang學習筆記_23——error補充

Golang學習筆記_20——error Golang學習筆記_21——Reader Golang學習筆記_22——Reader示例 文章目錄 error補充1. 基本錯誤處理2. 自定義錯誤3. 錯誤類型判斷3.1 類型斷言3.2 類型選擇 4. panic && recover 源碼 error補充 1. 基本錯誤處理 在Go中&#xff0c;函數…

Python中的asyncio:高效的異步編程模型

隨著互聯網應用的快速發展&#xff0c;程序的響應性和處理效率成為衡量系統性能的重要指標。傳統的同步編程模型在面對高并發和IO密集型任務時&#xff0c;常常顯得捉襟見肘&#xff0c;難以滿足現代應用的需求。Python的asyncio庫作為一種高效的異步編程模型&#xff0c;為開發…

JavaScript -- 數組詳解(使用頻率高)【數組專題】

文章目錄 前言一、創建數組1.1 使用Array構造函數1.2 使用數組字面量表示法1.3 ES6語法轉換數組1.3.1 from( )用于將類數組結構轉換為數組實例1.3.2 of( )用于將一組參數轉換為數組實例 二、數組常用方法2.1 復制和填充2.1.1 copyWithin( )2.1.2 fill( ) 2.2 數組轉換2.2.1 toS…

操作系統之文件系統的基本概念

目錄 用戶和磁盤視角的文件 文件控制塊&#xff08;FCB&#xff09;和索引結點&#xff08;inode&#xff09; 文件的操作 創建文件&#xff08;create系統調用&#xff09; 寫文件&#xff08;write系統調用&#xff09; 讀文件&#xff08;read系統調用&#xff09; 重…

如何制作一份出色的公司介紹PPT?

制作一份公司介紹的PPT需要精心設計&#xff0c;以確保內容既專業又吸引人。以下是一個基本的框架和一些建議&#xff0c;幫助您創建一份有效的公司介紹PPT&#xff1a; PPT標題頁 標題&#xff1a;公司全稱&#xff08;可使用公司Logo作為背景或嵌入標題中&#xff09;副標題…

springboot項目部署至linux

1.修改pom.xml 確認是否有以下代碼&#xff0c;沒有請進行添加&#xff0c;mainClass改成你的啟動類 <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.ve…

vue.js 使用router-link替代a標簽實現高亮

在Vue.js中&#xff0c;可以使用<router-link>組件來替代<a>標簽實現高亮效果。<router-link>是Vue-Router提供的組件&#xff0c;用于路由導航。 首先&#xff0c;需要在Vue項目中安裝Vue-Router。可以使用以下命令安裝&#xff1a; npm install vue-rout…

FPGA隨記——時鐘時序一些基本知識

原文鏈接&#xff1a;跨時鐘域設計-CSDN博客 前言 CDC&#xff08;clock domain crossing&#xff09;檢查&#xff08;跨時鐘域的檢查&#xff09;是對電路設計中同步電路設計的檢查。非同步時鐘沒有固定的相位關系&#xff0c;這樣Setup/Hold不滿足而產生了亞穩態是無法避免…

實例解析網絡釣魚攻擊的幕后

網絡釣魚是通過大量發送聲稱來自于銀行或其他知名機構的欺騙性垃圾郵件&#xff0c;意圖引誘收信人給出敏感信息&#xff08;如用戶名、口令、帳號ID、ATM PIN碼或信用卡詳細信息&#xff09;的一種攻擊方式。最典型的網絡釣魚攻擊將收信人引誘到一個通過精心設計與目標組織的網…

STM32+WIFI獲取網絡時間+8位數碼管顯示+0.96OLED顯

資料下載地址&#xff1a;STM32WIFI獲取網絡時間8位數碼管顯示0.96OLED 1、項目介紹 主控芯片STM32C8T6 接線&#xff1a;串口1&#xff1a;PA9 PA10 OELD &#xff1a;PB6 PB7 數碼管使用&#xff1a;MAX7219 8位數碼管 Max7219_pinCLK PAout(5) Max7219_pinC…

1688平臺商品關鍵詞搜索的多樣性與Python爬蟲應用實踐

在當今這個信息化、數字化飛速發展的時代&#xff0c;電子商務平臺已經成為人們日常生活中不可或缺的一部分。而1688作為國內知名的B2B電商平臺&#xff0c;憑借其龐大的商品種類和豐富的供應鏈資源&#xff0c;為無數商家和消費者提供了便捷的交易渠道。除了廣受關注的女裝品類…

記錄將springboot的jar包和lib分離,使用docker-compose部署

本文講訴如何把jar里的lib依賴包獨立出來&#xff0c;方便更新服務時&#xff0c;縮小jar的體積&#xff0c;下面以若依的system服務為例&#xff0c;配置中的路徑請酌情修改&#xff0c;主要提供大致配置邏輯 第一步&#xff1a;修改項目的pom.xml&#xff0c;調整build的配…

如何解決Redis中的熱點key問題

Redis中的熱點Key問題是指某些特定的Key被頻繁訪問&#xff0c;導致Redis中某個節點&#xff08;或實例&#xff09;承擔過高的壓力&#xff0c;可能引發性能瓶頸&#xff0c;甚至若緩存承受不住服務壓力掛掉后&#xff0c;仍有大量請求時直接打到DB上&#xff0c;由于DB層相對…

單片機實現模式轉換

[任務] 要求通過單片機實現以下功能&#xff1a; 1.單片機有三種工作模式(定義全局變量MM表示模式&#xff0c;MM1&#xff0c;2&#xff0c;3表示三種不同的模式) LED控制模式 風扇控制模式 蜂鳴器控制模式 2.可以在某一個模式下通過拓展板KEY1按鍵控制設備 (按…

安卓OCR使用(Google ML Kit)

OCR是一個很常用的功能&#xff0c;Google ML Kit提供了OCR能力&#xff0c;用起來也很簡單&#xff0c;本文介紹一下使用方法。 1. 相關概念 名詞概念解釋TextBlock塊一個段落Line行一行文本Element元素單詞&#xff1b;對漢字來說&#xff0c;類似"開頭 (分隔符)中間&…

數據庫(3)--針對列的CRUD操作

1.Create 新增 語法&#xff1a; insert into 表名 &#xff08;列名&#xff09;values &#xff08;列&#xff09;... 創建一個學生表用于演示&#xff1a; create table if not exists student( id bigint comment 編號, name varchar(20) comment 姓名 ); 1.1直接增加…

【設計模式-1】軟件設計模式概述

1. 軟件設計模式的產生背景 “設計模式”這個術語最初并不是出現在軟件設計中&#xff0c;而是被用于建筑領域的設計中。 1977 年&#xff0c;美國著名建筑大師、加利福尼亞大學伯克利分校環境結構中心主任克里斯托夫亞歷山大&#xff08;Christopher Alexander&#xff09;在…

Python爬蟲基礎——認識網頁結構(各種標簽的使用)

1、添加<div>標簽的代碼定義了兩個區塊的寬度和高度均為100px&#xff0c;邊框的格式也相同&#xff0c;只是區塊中顯示的內容不同&#xff1b; 2、添加<ul>和<ol>標簽分別用于定義無序列表和有序列表。<il>標簽位于<ul>標簽或<ol>標簽之…

Spring boot接入xxl-job

Spring boot接入xxl-job 導入maven包加入配置增加配置類創建執行器類&#xff08;寫job的業務邏輯&#xff09;去控制臺中配置job 導入maven包 <dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>…

[Git] git pull --rebase / git rebase origin/master

1. git pull --rebase 這個命令是用來更新當前分支的&#xff0c;它會從遠程倉庫拉取更新&#xff0c;然后將你的本地提交重新應用到更新后的基礎之上。它相當于先執行 git fetch&#xff0c;然后在當前分支上執行 git rebase origin/。使用 --rebase 而不是默認的 merge 可以…