2015-09-07 32 views
0

我具有這些特性:Wix:如何從客戶端屬性獲取分辨率屏幕?

Property(S) ScreenX = 1024 
Property(S) ScreenY = 768 
Property(C) ScreenX = 1920 
Property(C) ScreenY = 1080 

如果我使用例如ScreenX屬性,我僅獲得用於屬性(S)的screenX值時。

我想獲得財產(C)的screenX值時 - >客戶端。

可能嗎?

+0

在這裏發帖時有幾個小竅門:請不要在你的帖子上簽名(你的個人資料卡爲你做),請不要標記爲緊急/儘快(這裏唯一協助的人是志願者)。 – halfer

回答

0

ScreenX propertyScreenY property在SDK中很少DOCO。據推測,微軟認爲沒有什麼可說的。正如你從日誌中看到的,客戶端「(c)」msiexec進程有1920x1080,但服務器端「(s)」看到1024x768。這似乎開始發生在Vista中,但MSDN doco並沒有解決它。然後有一個它根本無法表達的多顯示器的情況。

Some people採取ScreenX/Y,並將其分配到一個安全的定製公共屬性和然後使用該執行序列(服務器端)中。這在靜默安裝過程中不起作用。我想一個自定義操作可以查詢API(可能是一個wmi類)以獲取有關係統中顯示適配器的更多信息。

我的問題,雖然是:何必呢?

解決方案檢查最好在應用程序中完成,因爲解決方案可以在安裝完成後更改,並且因爲在應用程序代碼中執行起來更容易。

+0

而且還有多個顯示器! – PhilDW

+0

感謝您的迴應:這是一個恥辱,它是我們無法檢查安裝屏幕分辨率時!我們可以在應用程序中做到這一點,但安裝應用程序的人應該知道它是否可以使用應用程序!在我們的情況下,它必須啓動安裝並運行應用程序,然後被告知不可能! – IBACK

+0

然後正確的自定義操作。 wmi類的Win32_DesktopMonitor應該有你正在尋找的東西。 –