2009-04-13 89 views
1

Microsoft提供了vshadow的源代碼來操縱VSS(卷影服務[卷影副本]),並且我對它進行了一些修改,但是我想將它變成一個dll我可以在我的C#項目中使用它。我不知道該怎麼做,源代碼非常簡單,不應該太難,但我不知道從哪裏開始。我應該如何將其轉換爲可用的dll而不是編譯爲可執行文件?將C++ .exe項目轉換爲DLL

更新:有人已經做到了這一點:http://www.alphaleonis.com/2008/08/alphavss-bringing-windows-shadow-copy-service-vss-to-net/

回答

3

您需要更改在Visual Studio項目設置,以創建一個DLL。另外,您需要定義dll入口點。

但是,VSS是一組COM API的,所以你可以直接從C#中用pinvoke調用它們,而不是使用這個包裝器的C++可執行文件。

由於SDK只包含庫,而不是DLL,所以您必須創建一個dll項目才能使用它。

這是一個good blog-how-to

你需要下載VSS SDK(如果你還沒有的話)。

Decent article on pinvoke.

希望這有助於。

+0

什麼是我需要從C#中使用VSS導入的VSS dll? – Malfist 2009-04-13 17:59:23

+0

我在SDK中看到只有lib – Malfist 2009-04-13 18:03:27

-1

這樣的任務範圍從微不足道到極其複雜。就你而言,這個問題可能傾向於複雜的結局。

原因是因爲您需要用一組您可以使用的新功能替換現有接口。這些功能需要導出,所以你可以用dotNet導入它們。