亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

VS2010下生成dll的方法

2019-10-29 21:06:37
字體:
來源:轉載
供稿:網友

1.首先創建生成dll的項目:打開VS2010,兩種途經建立dll項目,基于MFC DLL的和基于Win32控制臺應用程序的,這里選擇基于Win32控制臺建立。

a.文件--新建--項目(項目命名為myAPI)--Visual C++ --Win32--選擇Win32控制臺應用程序;
b.接下來下一步一直到如下圖,程序類型選擇DLL,如無特殊需要選擇空項目完成,項目建立完畢;

VS2010,生成dll

2.定義頭文件:為項目添加頭文件myAPI.h 內部添加如下代碼,

#ifndef _DLL_API #define _DLL_API _declspec(dllexport) #else #define _DLL_API _declspec(dllimport) #endif  _DLL_API int ADD(int a,int b); 

內部定義一個ADD()函數接口,如需添加其他函數接口,可以接著繼續定義,如

_DLL_API int MINUS(int a,int b); _DLL_API int otherfunc(int,int,int); 

3.定義源文件:為項目添加相應的源文件myAPI.cpp 之后便是在該源文件中對函數進行定義,內部添加如下代碼,

#include "myAPI.h"  int ADD(int a,int b){   return a+b; }

4.編譯至通過,生成dll:這里有個小建議,因為dll項目不會生成exe,無法實時測試API,所以建議先在一般空項目內調試并測試通過API的函數體代碼,然后再建立dll項目直接編譯通過,這樣更方便可靠。 回到正題,dll項目編譯通過后有用的就是myAPI.h頭文件以及Debug目錄下新生成的myAPI.dll 和myAPI.lib文件,

VS2010,生成dll

5.調用dll:為了測試我們剛剛生成的dll,創建新的項目mytest。包含聲明myAPI.h頭文件,這里存放了定義的接口。將myAPI.dll文件放入新工程Debug文件夾下(.exe執行時需要調用,新項目如未編譯則沒有Debug文件夾,待編譯后有了該文件夾再將dll文件放入)。將myAPI.lib文件放在與源文件及頭文件相同路徑下(編譯時需要),接下來需要將.lib資源添加到項目中,兩種方法。
一種方法是,在項目屬性-鏈接器-輸入中“附加依賴項”加入myAPI.lib文件(當然,有過未設置此處亦編譯成功的經歷,但不建議);
另一種調用方法是在新項目主程序中添加如下命令 則無需設置依賴項;

#pragma comment(lib,"myAPI.lib") 

VS2010,生成dll

至此,全部完成任務,編譯通過后正常使用你自己定義的API了~

VS2010中使用CL快速 生成DLL的方法

方案一:
1、命令行中輸入cl example.cpp,生成example.obj和example.lib文件。有可能還會提示“沒有入口點”的錯誤。這是因為我們的CPP中是要生成dll文件的,并沒有main()這樣的主函數作為入口點。如果是C文件,則輸入cl /c example.cpp

2、命令行中輸入cl /def:example.def /dll:example.obj

方案二:

命令行中輸入 cl /LD example.cpp example.def,直接生成example.dll(名字會因在def中定義的不同而有所不同)文件。有可能會提示(warning LNK4070: .EXP 中的 /OUT:example.dll 指令與輸出文件名“example.exe”不同;忽略指令),這時生成的可能是example.exe文件。只要將example.exe改成example.dll就可以了,或者直接在加載dll的函數中加載example.exe.

注意:/LD一定要大寫,不能寫成/ld,這里可折騰了我快一天了才找出來的原因。

vs2010 問題 >LINK : fatal error LNK1123: 轉換到 COFF 期間失敗: 文件無效或損壞

>LINK : fatal error LNK1123: 轉換到 COFF 期間失敗: 文件無效或損壞

問題說明:當安裝VS2012之后,原來的.NET 4.0會被替換為.NET 4.5。卸載VS2012時,不會恢復.NET 4.0。

l 當VS2012安裝后,VS2010的cvtres.exe就無法使用了。如果你的PATH環境變量中VS2010的工具路徑第一個出現,而且鏈接器需要將.res文件轉換為COFF 對象格式,就會導致LNK1123錯誤。
l 當VS生成PE文件頭時,使用的cvtres.exe版本錯誤,不能與當前的.NET平臺兼容。
解決方案:

參考:

http://stackoverflow.com/questions/10888391/link-fatal-error-lnk1123-failure-during-conversion-to-coff-file-invalid-or-c

因為是cvtres.exe版本錯誤導致的結果,所以凡是能使VS鏈接器找到正確的cvtres.exe版本的方法都可以解決該問題?;蛘呤筕S鏈接器不生成COFF的方法都可以。

【方法一】
當前系統中存在兩個cvtres.exe文件,版本不同。讓VS2010使用.NET 4.5的cvtres.exe程序。

具體步驟:

重命名或刪除:(vs2010安裝的位置)C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/cvtres.exe

這樣C:/Windows/Microsoft.NET/Framework/v4.0.30319 (.NET 4.5)中的cvtres.exe文件就可以被VS2010使用。

【方法二】
解決方法如下:
項目/屬性/配置屬性/清單工具/輸入和輸出/嵌入清單:原來是“是”,改成“否”。

說明:這種方法每個工程均需要修改配置。

【方法三】
安裝:VS2010 SP1. 該版本應該是能使用.NET 4.5的,并配有正確的cvtres.exe版本。

注意:安裝VS 2010 SP1 時會移除64-bit 編譯器. 通過安裝 VS 2010 SP1 compiler pack 能夠重新獲得。

【方法四】
卸載.NET 4.5,重裝.NET 4.0


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩av在线| 亚洲精品国产精品国自产观看浪潮| 国产精品美腿一区在线看| 欧美综合国产精品久久丁香| 久久青草精品视频免费观看| 爱福利视频一区| 国产精品日韩在线一区| www.xxxx精品| 国产小视频国产精品| 中文字幕亚洲专区| 日韩中文在线中文网在线观看| 亚洲综合在线做性| 午夜精品一区二区三区在线播放| 伊人青青综合网站| 中文字幕精品久久| 日韩中文字幕视频| 国产精品久久久久久久电影| 欧美一区二区三区艳史| 欧美精品一本久久男人的天堂| 亚洲aⅴ日韩av电影在线观看| 成人免费直播live| 神马久久久久久| 色综合久久88| 成人国产在线激情| 国产成人精品免高潮在线观看| 亚洲有声小说3d| 成人性生交大片免费看视频直播| 日韩在线观看免费av| 久久久噜噜噜久久久| 在线电影欧美日韩一区二区私密| 日韩欧美精品免费在线| 超碰精品一区二区三区乱码| 国产亚洲精品一区二555| 中文字幕精品一区二区精品| 日韩电影中文字幕| 久久精品色欧美aⅴ一区二区| 欧美一级成年大片在线观看| 91黑丝在线观看| 日韩电影大全免费观看2023年上| 成人亚洲欧美一区二区三区| 久久久免费电影| 日韩av男人的天堂| 国产精品无av码在线观看| 精品久久久在线观看| 国产欧美在线看| 国产精品久久久久久久久久免费| 久久久久北条麻妃免费看| 国产精品人成电影在线观看| 九色精品美女在线| 亚洲国产美女久久久久| 青青久久av北条麻妃海外网| 欧美成年人视频| 久久久精品一区二区| 国产精品成人免费电影| 国产日本欧美视频| 日本a级片电影一区二区| 国产亚洲a∨片在线观看| 久久久人成影片一区二区三区观看| 亚洲欧美制服中文字幕| 日韩黄在线观看| 国产精品久久久久影院日本| 欧美在线激情视频| 国产精品国产福利国产秒拍| 久久久久久久久久久91| 亚洲自拍另类欧美丝袜| 国产精品久久久久久久app| 久久精品精品电影网| 成人免费网站在线| 精品国产精品三级精品av网址| 国产精品黄色影片导航在线观看| 亚洲人成网在线播放| 欧美性猛交xxxx黑人猛交| 日韩欧美在线视频观看| 国产精品爽黄69天堂a| 亚洲成人三级在线| 日韩va亚洲va欧洲va国产| 成人h片在线播放免费网站| 81精品国产乱码久久久久久| 久久视频中文字幕| 久久99精品国产99久久6尤物| 国产福利精品av综合导导航| 日韩精品电影网| 在线精品高清中文字幕| 欧美日韩国产精品一区二区不卡中文| 伊人av综合网| 欧美激情精品在线| 成人精品在线视频| 亚洲成av人片在线观看香蕉| 国产91精品视频在线观看| 狠狠久久亚洲欧美专区| 亚洲精品久久久久中文字幕欢迎你| 欧美性猛交丰臀xxxxx网站| 欧美日韩中文字幕在线视频| 欧美精品videosex牲欧美| 久久综合免费视频| 亚洲第一福利在线观看| 精品视频在线播放| 日本一区二区在线免费播放| 国产亚洲欧洲黄色| 57pao精品| 成人在线一区二区| 欧美激情亚洲一区| 国产精品视频自在线| 亚洲一区二区福利| 欧美激情视频网站| 亚洲国产一区二区三区四区| 国产亚洲成av人片在线观看桃| 91精品视频专区| 在线播放国产一区二区三区| 欧美电影电视剧在线观看| 亚洲人成网站免费播放| 2020久久国产精品| 精品国模在线视频| 91色p视频在线| 午夜精品福利视频| 久久精品成人欧美大片古装| 久久天天躁夜夜躁狠狠躁2022| 久久久久久久久久av| 亚洲在线www| 日韩精品视频中文在线观看| 国产午夜精品免费一区二区三区| 久久精品国产视频| 亚洲欧美另类国产| 国模私拍一区二区三区| 国产美女扒开尿口久久久| 欧美性xxxx极品hd满灌| 欧美激情综合亚洲一二区| 亚洲一区二区三区成人在线视频精品| 国产精品大陆在线观看| 777国产偷窥盗摄精品视频| 欧美野外猛男的大粗鳮| 欧美亚洲午夜视频在线观看| 伊人青青综合网站| 97精品欧美一区二区三区| 日韩小视频网址| 九九久久综合网站| 国产不卡av在线免费观看| 成人av在线网址| 亚洲国产欧美一区二区三区久久| 欧美成人精品不卡视频在线观看| 亚洲乱亚洲乱妇无码| 久久躁日日躁aaaaxxxx| 欧美精品免费播放| 国产精品免费一区二区三区都可以| 日韩电影免费在线观看中文字幕| 亚洲美女又黄又爽在线观看| 欧美一级视频在线观看| 68精品久久久久久欧美| 国产精品入口尤物| 亚洲午夜未满十八勿入免费观看全集| 欧美一级大片在线免费观看| 亚洲老头老太hd| 57pao国产成人免费| 色婷婷久久av| 91精品久久久久久久久不口人| 91精品国产沙发| 成人黄色激情网| 久久精品视频一| 久久影院免费观看| 亚洲国产高清高潮精品美女| 亚洲国模精品一区| 国产精品99导航| 国产一区二区日韩精品欧美精品| 久热精品视频在线免费观看|