2011-01-14 41 views
0

我有一個關於我的ActiveX控件不總是在其他機器上的IE中工作的問題。ActiveX控件始終在我的機器上工作 - 在其他人上發生不可預知的行爲?

上下文:我正在爲我公司的內部應用程序工作。它旨在成爲一個獨立的網頁配置工具,用於查看我們的Web應用的靜態定製版本。用戶可以選擇他們希望看到的顏色,圖像和其他設置,當他們點擊一個按鈕時,這些設置將出現在機器上的靜態模型/預覽版本中。

執行:我的javascript文件創建了一個文件系統/ activex對象,它基本上創建了一個臨時的JavaScript文件,其中寫入了一個值列表。然後當用戶預覽配置時,javascript文件被定位並且值被動態地加載到dom等等中。當然,這個功能只能在Internet Explorer中工作,並且最好是陰暗的,但是我實現純粹的零配置的唯一方式,客戶端動態webapp。

問題:當我測試出我的腳本時,Internet Explorer會提示我兩次關於ActiveX控件的信息,並且我會對他們說「是」並且ActiveX函數正常工作。每當我打開我的頁面時,我都會這樣做。但有時,當我將文件發送給其他人以便他們可以使用它時,他們不會收到通知,因此不起作用。不過有時他們確實收到通知,並且確實在工作!我爲IE使用默認安全設置,因此我的設置和他們的設置應該沒有區別。

這可能與我的用戶權限和他們的用戶權限有關,或者這些文件是隻讀的(因爲它們來自源代碼管理,並且在共享驅動器上也是隻讀的),或者未知的黑暗微軟力量超越人類理解?

感謝, 喬希

+3

其中一個可能的原因是您的ActiveX控件對系統中安裝的外部庫有一些依賴關係,並且未安裝在其他某些庫上。如果你的ActiveX是在VS2005/2008或其他庫中編寫的話,它可能是CRT/MFC的依賴關係。使用dependency walker來檢查它們。 – DReJ 2011-01-14 21:39:57

回答

0

我相信你可能需要創建一個HTA(HTML應用程序)而不是網頁。就ActiveX對象而言,編寫HTA爲您提供更多權限。看看微軟的這個頁面:http://msdn.microsoft.com/en-us/library/ms536496(v=vs.85).aspx

要回答您有關權限的問題,我相信您的一些同事的IE設置可能會阻止網頁使用ActiveX對象。您的設置可能會在每當即將創建ActiveX對象時提示您。

相關問題