數碼中文坊

 取回密碼
 我要註冊
檢視: 11809|回覆: 10

[已解決] Setup Factory 7.0.4.0安裝完自動執行批次黨的問題

[複製連結]
發表於 2007-12-24 00:24:20 | 顯示全部樓層 |閱讀模式

馬上註冊,結交更多好友,享用更多功能,讓你輕鬆瀏覽論壇。

你需要 登入 才可以下載或檢視,沒有帳號?我要註冊

x

搞了4小時搞不出來.....

我設定在安裝結束後執行安裝資料夾內的unc.cmd

Shell.Execute(SessionVar.Expand("%AppFolder%\\unc.cmd"), "open", "", "", SW_SHOWNORMAL);

可是每次執行出來好像都是開個TEMP的資料夾執行....

因為我的批次檔有寫更改安裝資料夾內的檔案...他都沒有更改、刪除

而且因為每個使用者都會更改安裝路徑...所以我不能把批次黨改成絕對路徑

所以我還是搞不好.....

拜託大大解決一下....感激
發表於 2007-12-24 09:33:35 | 顯示全部樓層

首先,請問你的 %AppFolder% 這個變數的資料夾中的內容是預先設定的還是動態取得?如何取得?

另外,改安裝資料夾內的檔案可以不需要另外寫批次檔,Setup Factory 本身就可以做到。

 樓主| 發表於 2007-12-24 12:43:38 | 顯示全部樓層
%AppFolder%室裝資料夾的地方 再選擇安裝路徑的那個路徑就是 %AppFolder% 但是檔案安裝的上去....執行 Shell.Execute(SessionVar.Expand("%AppFolder%\\unc.cmd"), "open", "", "", SW_SHOWNORMAL); 時候卻是在TEMP資料夾執行....
發表於 2007-12-24 15:06:56 | 顯示全部樓層

我知道,我的意思是,你的預設 %AppFolder% 內容是什麼?一般來說,%AppFolder% 是從 Session Variables 這個地方輸入的,必須要先給它一個值。預設為 %ProgramFilesFolder%\%ProductName%,但你也可以直接輸入如 c:\folder

 

 

如果你不在這裏指定,或 %AppFolder% 這個目標資料夾內容需要視情況,那麼你必須在程式中放入一段如何決定 %AppFolder% 的程式碼。

 

如果你沒給它指定內容,有可能就是這樣才會開出一個 TEMP 資料夾。如果可以的話,你把這頁的設定貼上來看看。

本主題中包含更多資源 (圖片、附件...)

你需要 登入 才可以下載或檢視,沒有帳號?我要註冊

x
 樓主| 發表於 2007-12-25 00:08:17 | 顯示全部樓層
我試過了....還是不行....

我將執行檔案放在    進行安裝時   也就是他把檔案都安裝上去之後

可是他還是執行temp資料夾......


發表於 2007-12-25 10:39:58 | 顯示全部樓層
我好像發現你的問題所在了!執行檔案是使用 File.Run,而你用的是 Shell.Execute,似乎不太對!
 樓主| 發表於 2007-12-25 11:48:38 | 顯示全部樓層
RUN似乎並不會執行.....
OPEN可以執行但他會從TEMP執行....

似乎改不出來...
發表於 2007-12-25 12:27:02 | 顯示全部樓層

你的 WorkingFolder 是空的!一般來說,WorkingFolder 必須與與 Filename 內的資料夾相同。在此例中必須是 SessionVar.Expand("%AppFolder%")。

 

如果還是不行,我的想法是, .cmd 的批次檔必須當作參數來執行,也就是說它可能是由 cmd.exe 這支程式來呼叫。所以,在 Filename 中填入 cmd.exe,然後在 args 中再填入 unc.cmd。兩者應該都必須包含路徑。同樣的 WorkingFolder 也必須輸入。

以上均使用 File.Run

 

如果 File.Run 都不行,改用 File.Open 時,WorkingFolder 也必須輸入。

 樓主| 發表於 2007-12-25 18:00:03 | 顯示全部樓層

解決了.....問題來源就是要先取得>>安裝路徑的變數<<

 

這東西需要看很多很多的程式碼...在過濾出來他們的安裝路徑是哪個變數

 

再把執行的WorkingFolder中輸入安裝路徑的>>變數<<

 

這麼簡單....我卻搞了5天....

 

 

還有問個問題......

 

1.有辦法就是安裝到一半執行程式嗎??

 

目前好像都是安裝完成後才開始執行....因為設定是在"進行安裝時"

 

 

 

2.如何做樹狀選單選擇需要的程式

 

這個內建很爛.....就只有打勾....沒有啥典型安裝...一般安裝那種的...

 

正在研究這個

 

再幫忙一起研究吧~感激

[ 本文最後由 john2834 於 2007-12-25 09:01 PM 編輯 ]
發表於 2007-12-26 09:58:06 | 顯示全部樓層

安裝到一半執行程式我是沒用過,你可以試試在 While Installing 中的那個 One Progress Bar 畫面的 Actions 找到 On Progress 裏面去執行程式看看。

 

至於你說的那個選擇安裝功能,大概就是這樣陽春了(我也沒用過)。

 樓主| 發表於 2007-12-26 19:26:23 | 顯示全部樓層
最後我決定了....... 轉戰NSIS......XD
你需要登入後才可以回覆 登入 | 我要註冊

本版積分規則

Archiver|禁閉室|手機版|數碼中文坊

GMT+8, 2024-4-19 09:20 PM

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回覆 返回頂端 返回清單