2010-01-25 48 views
5

我們的應用程序需要安裝HASP SRM設備驅動程序才能安裝和運行。如何在XP兼容模式下啓動另一個進程?

目前,只有他們的5.50驅動程序在所有測試平臺上一致地工作(他們的5.75(官方)和5.86(測試版)驅動程序在測試的大約1/3計算機上發生崩潰)。因此,他們的5.50驅動程序是好的,目前可用的任何其他東西都壞了,5.50驅動程序拒絕在Vista和Windows 7下加載。但是,如果我將exe的屬性設置爲「XP兼容模式」,那麼他們的5.50驅動程序安裝併成功運行。

我在註冊表周圍挖在Windows 7下,我發現有當我問兼容模式由至少一個條目:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\ 
    full-path REG_SZ WINXPSP3 

我應該能夠從添加關鍵我們的安裝程序,然後嘗試啓動5.50驅動程序安裝程序。

問題:

  • 我在哪裏可以找到兼容模式更完整的討論?
  • Vista和Windows 7下的按鍵/設置是否不同?
  • 在32位與64位下的鍵/設置是否不同?
  • 當我調用CreateProcess()時,有沒有辦法直接詢問這個問題?

回答

3

可以設置__COMPAT_LAYER環境變量(在你的進程設置它調用CreateProcess的之前,或建立CreateProcess的一個新的環境塊)

+0

這看起來很有希望。如果我能完成這項工作,我會給你答案。 ;) – Mordachai 2010-01-26 15:24:49

相關問題