所有,如何VSTO項目
這是一個跟進我的問題here內註冊UDF/RTD。
我的設置:
- 的Visual Studio 10
- 語言C#
- 的Excel 2007+
- 的Windows XP +
我想實現的是:
- 與自定義功能區組件和自定義任務窗格
- 創建VSTO加載項爲Excel創建RTD服務器
- 創建一些UDF的那個包裹
=RTD()
-calls的Excel用戶 - 有客戶端通過一個安裝加載項ClickOnce安裝
除了最後一項要求,我基本上完成了。我遇到的唯一問題是無需使用regasm.exe
即可在目標機器上註冊RTD服務器和UDF。 我基本上希望客戶端確實點擊一次,然後忘記它,特別是因爲有數百個潛在用戶,全部分佈在全球各地。另外,由於它們在技術上並不精通,所以我不希望它們必須手動註冊COM組件或類似的東西。
我不介意UDF和RTD服務器是否是一個單獨的項目,只要我可以通過ClickOnce將它們與VSTO插件一起包含並註冊。
我查看了免註冊的COM,但並不是爲了讓我能夠在VSTO插件中工作。 我所做的是創建第二個項目(library class
),並嘗試導出並註冊COM互操作,然後將其包含到我的「主」項目中並在那裏使用它:它不會編譯(Cannot embed interop types from assembly [...] because it is missing either the 'ImportedFromTypeLibAttribute' attribute or the 'PrimaryInteropAssemblyAttribute' attribute
)或不註冊。
在我的需求的單獨部分,互聯網上有負載和負載的例子,但沒有完整的monty。
我完全偏離了這裏嗎?有人可以請我指出正確的方向,理想情況下提供一些示例代碼/配置?
乾杯, 澈
非常感謝,這指出我的方向正確!我會接受這是正確的答案,並加上我自己的迴應。再次,非常感謝,我終於能夠解決這個微軟的噩夢... – LeChe 2011-03-02 14:50:30
你的版本更清潔......感謝分享。我已經更新了自己的安裝程序來完成此操作。參見:http://stackoverflow.com/questions/5397607/howto-create-a-real-time-excel-automation-add-in-in-c-using-rtdserver – Frank 2011-03-23 16:50:38