2012-09-15 73 views
2

這是我第一次使用Access Developer Extensions以外的安裝程序。我有幾個MS Access文件,我試圖安裝到用戶的AppData \ Local文件夾中。它似乎要做的唯一事情是將兩個文件放在該文件夾中:unins000.exe和unins000.dat。它似乎忽略了我想放在那裏的文件,但是當我編譯它時,肯定會將它們包含在Setup.exe文件中。這裏是腳本 - 有人可以告訴我這裏可能是錯的嗎?目標文件夾或文件是否存在似乎並不重要 - 我得到的結果相同。Inno Setup不包括目標文件夾中的任何指定文件

; -- LEAP.iss -- 

[Setup] 
AppName=LEAP 
AppVersion=1.1 
DefaultDirName={localappdata}\LEAP 
DefaultGroupName=LEAP 
Compression=lzma2 
SolidCompression=yes 
OutputDir=userdocs:Inno Setup Output 

[Files] 
Source: "China.accdb"; DestDir: "{localappdata}"; DestName: "China.accdr" 
Source: "Replica of China_be.mdb"; DestDir: "{localappdata}" 

[Icons] 
Name: "{group}\LEAP"; Filename: "{localappdata}\China.accdr" 
Name: "{userdesktop}\LEAP"; Filename: "{localappdata}\China.accdr" 

回答

6

要在[Files][Icons]部分與{app}更換{localappdata}。一旦用戶在「選擇目標位置」嚮導頁上選擇安裝位置,將定義{app}常量。您的最終用戶可能不會意識到您已經允許他們選擇安裝程序的位置,只是發現您實際上在安裝程序中對該位置進行了硬編碼。

如果您不想讓他們選擇一個位置,請在[Setup]中設置DisableDirPage=true

您還應該在[Setup]中建立一個AppID值。

+0

好吧,我不希望他們選擇位置,所以這很有幫助,但是如果我希望文件進入其本地AppData文件夾,爲什麼要使用{app}?他們不會把它們放在Program Files中嗎?或者你認爲這就是爲什麼它沒有把文件放在那裏?因爲某些原因,它不想將它們放入{localappdata}中? – tbaker818

+1

無論用戶放入「選擇目標位置」嚮導頁面,「{app}」都會展開,默認情況下,您將默認設置爲「DefaultDirName」。既然你已經將它設置爲'{localappdata} \ LEAP',那麼這就是默認的,你應該使用它。但是請注意,像這樣安裝到每個用戶文件夾意味着您還必須使用'PrivilegesRequired = lowest'。 – Miral

相關問題