2010-02-05 119 views
2

我一直在關注msdn的教程,它不起作用。無法讓DLL在Visual Studio上工作

我遇到的第一個問題是,有時.dll和.lib不會被構建。相反,我只能得到.objs。每當我構建.dll項目時,它都會給我一個彈出窗口,詢問「請指定要用於調試會話的可執行文件的名稱」。我被告知要將我的啓動項目更改爲一個帶有主函數的項目,但是這個.dll不會被構建。這會發生在使用默認VS配置並簡單地添加一些行或遵循msdn的分步指南。

當建立.dll和.obj時 - 上帝知道如何 - 我無法讓它們被識別。我試過把它們和.h放在項目文件夾中,但是接下來我得到一個有關.dll函數未定義的錯誤。繼MSDN鏈接,在一個點上,它說:

  • 要使用的動態鏈接庫中創建的數學程序, 必須引用庫。要做 這個,從 項目菜單中選擇References ...。在Property Pages 對話框中,展開Common Properties節點,選擇References, ,然後選擇Add New Reference ... 按鈕。有關 引用...對話框的詳細信息,請參閱框架 和引用,通用屬性, 屬性頁對話框 框。

  • 顯示添加引用對話框。該對話框列出您可以參考的所有 庫。 「項目」選項卡列出當前解決方案 中的所有項目以及它們包含的任何庫 。在項目選項卡上, 選擇MathFuncsDll。

  • 如果我去項目>測試屬性>通用屬性我只能找到子項目「框架和參考」。沒有「引用...」有一個「添加新的引用...」按鈕,但不允許我添加任何內容。另一個按鈕「添加路徑...」並沒有什麼區別,即使當我用文件設置目錄時也是如此。以下步驟也不起作用。

    我也嘗試在鏈接器中添加文件的名稱,但它說它無法找到.obj文件。

    我不知道該從哪裏出發。我一直堅持這幾個小時,沒有任何解決方案。

    在VS2008的實際工作中,有沒有一步一步的指南?

    回答

    1

    首先你的描述是將託管(.net)的東西與普通的C++東西混合在一起。我假設你正在做正常的C++的東西。

    你是否擁有(我的意思是源代碼;作者)DLL和調用程序?如果是這樣,你應該有2 VS項目的一個DLL和一個程序。您應該將該程序設置爲啓動項目。這將使調試器的行爲正確

    爲了獲得構建權,您需要使C++程序依賴於dll項目。有一個項目|項目依賴對話框將爲你做這個,設置程序項目依賴於dll項目

    如果你只擁有DLL,那麼你需要去項目屬性|調試並告訴它運行什麼二進制文件來調用你的DLL。

    如果這是託管C++那麼它的一個完全不同的storty

    0

    嘗試指定您的DLL項目和使用該DLL的應用程序的項目之間Project Dependencies

    References設置專用於.NET項目。

    相關問題