2012-05-16 48 views
0

的計算機上的XLL我developped與Visual Studio 2010的XLL和Excel 2010,它工作正常Excel的視覺被安裝在計算機上。但現在,我試圖在沒有安裝可視化的計算機上使用我的xll,所以我想創建一個設置。設置的視覺地方沒有安裝

事實上,我試圖執行在安裝任何一個窗口(僅Excel 2010中)我的XLL:它不工作。所以我在X64和X86上安裝了「visual 2010 C++可再發行軟件包」。之後我再次嘗試在Excel中執行我的xll,但它不再工作。

編輯:我用 「帶的Depends.exe」 在我的兩個XLL。在其不工作的XLL,在C:\ WINDOWS \ SYSTEM32 \ SHLWAPI.DLL有一個紅色的畫面左側,但是這是工作的XLL有沒有錯誤此DLL:

error with depends.exe

所以我問題是xll需要增加C++包以便在沒有可視化的計算機上執行?

或者你有一個簡單的方法來創建一個XLL的設置(我已經創建了一個可視化的設置和它不工作,所以也許有一種另一種方法...)。

+0

它做什麼而不是工作?任何錯誤消息? –

+0

在沒有安裝visual的計算機上:在我將xll放在EXCEl上之後,我嘗試放上一個單元格「= Myfunc」,沒有匹配它的函數列表。我把相同的XLL放在安裝了視覺的計算機上,它的工作原理是:當我放入「= Myfunc」時,我有一個函數列表,對應於我的XLL的功能 –

+0

如果您在SHLWAPI.DLL中使用shell函數您可能會鏈接到目標操作系統上不可用的功能。如果您正在編譯最新版本的Windows SDK,但在Windows XP上運行,則會出現此問題。更多關於處理不同版本的外殼庫的位置:http://msdn.microsoft.com/en-us/library/windows/desktop/bb776779(v=vs.85).aspx – Govert

回答

1

對於VS 2010發佈版(http://www.microsoft.com/en-us/download/details.aspx?id=5555)和帶有Service Pack 1(http://www.microsoft.com/en-us/download/details.aspx?id=8328)的VS 2010,有單獨的C/C++運行時重新分發,您需要安裝一個與您的開發環境相匹配的驅動程序。

另一種方法是更改​​爲你的附加在C/C++運行時的靜態鏈接。

Setting the Runtime Library

此外,檢查您的Excel宏安全性沒有被設置爲「高」或禁用加載項的設置。

+0

的結果相同「另一種方法是將C/C++運行庫的靜態鏈接更改爲加載項「你怎麼能這樣做? –

+0

我試着用SP1的SP1發佈版本的C/C++運行時(與我的開發環境相同),並將我的Excel宏安全設置爲'無安全性',並且不再工作。也許我有一些新的元素(在我的問題的編輯部分),可以幫助我們 –

+0

添加了靜態鏈接的圖片。但是,如果您已經嘗試安裝正確的C/C++運行時,這不是您的問題。 – Govert