2012-06-30 24 views
0

是否有辦法在2009年的InstallShield一些按摩設置爲用戶給出提示,如果 -微星採用installshield2009

  1. 他們重命名設置或改變文件名?
  2. 安裝程序正在從網絡位置運行?
  3. 當UAC功能打開?

任何建議將受到高度讚賞和歡迎。

感謝, 維迪亞

回答

0

Windows安裝程序提供性能檢測1個2

  1. OriginalDatabase屬性保存的路徑.msi文件。
    仔細閱讀說明:Windows Installer在緩存包時重命名包。所以你的安裝必須要解決這個問題。
  2. SourceDir屬性保存包含安裝包的目錄。
    你必須安排ResolveSource action之前使用該屬性。再次,您必須小心,並且不要在卸載期間安排ResolveSource操作。
  3. 據我所知,無論是否啓用UAC,Windows Installer都不支持直接檢測。

如果你想檢測bootstapper setup.exe是否被重命名或從網絡上運行,這是另一回事,我不能幫你。


請說明爲什麼你需要檢測這兩種情況。

  1. 爲什麼它會影響您的設置如何命名?
    我不認爲用戶經常重命名安裝文件。如果你的安裝程序包只包含在一個文件中,我看不到任何重命名不好的原因。

    維迪亞:我不知道,但用戶們說,當他們嘗試重命名設置,他們獲得相關的一些編譯消息,並設置不使他們重新命名的設置。

  2. 如果安裝程序從網絡位置運行,會發生什麼變化?
    可以從網絡位置安裝Windows安裝程序包。在進行管理安裝的情況下,甚至是從網絡位置執行安裝的常見情況。

    維迪亞:問題是,當我們從網絡位置安裝MSI並嘗試在其上運行安裝程序安裝的更新,它顯示「文件無法找到」

  3. 怎麼辦如果您知道UAC處於打開或關閉狀態,您是否在設置中進行操作?
    Windows安裝程序自身與UAC配合良好。所有你必須關心的是你寫的自定義操作:它們必須是UAC意識的。這一點只能歸結爲一個要求:只有延遲操作必須對系統進行修改,延遲操作在系統上下文中運行;其他自定義操作將在當前登錄的用戶的上下文中運行。對於Windows XP以及沒有UAC的情況,此要求也適用:在非延遲操作中修改系統設置是一種不好的做法。

    維迪亞:基本上我們想給用戶一個消息時,UAC被開啓,而該用戶不具有管理previledges或僅僅告知他們要麼UAC設置到最低運行安裝程序之前。

+0

感謝您的意見阿列克謝。請在我的留言前面看到我的留言,前面有Vidya –

+0

@VidyaNandTiwari 1.這取決於安裝佈局。如果它由多個文件組成,那麼這些文件的名稱可能很重要。你的設置是在一個文件中? –

+0

2.可能發生的情況是安裝程序無法通過網絡訪問某些文件。對於MSI,安裝過程在系統上下文中運行:用戶的網絡驅動器未安裝在系統帳戶下;如果網絡共享需要用戶/密碼才能訪問它,則系統帳戶將無法訪問網絡上的支持文件。這又取決於安裝佈局。 –