① 如何解決vs2015運行缺少ucrtbased.dll的問題
1,安裝.NET Framework 4.5.1
2,安裝Microsoft Visual C++ Build Tools 2015
當前最新版本:Microsoft Visual C++ Build Tools 2015 Update 3
3,安裝Microsoft Visual C++ 2015 Redistributable
編譯使用注意:cl.exe /EHsc /D _DEBUG /MDd xx.cpp
使用/MDd選項編譯源文件後,運行時需要 MSVCP140D.dll,VCRUNTIME140D.dll,ucrtbased.dll這三個DLL文件。
須將對應版本(x86,x64,arm)的ucrtbased.dll需要拷貝到目標文件(exe)的目錄下才可以成功運行程序。
② 如何在visual studio2015更方便的編寫C程序
VS2015Update1已經支持C++的單文件IntelliSense了,可以不用創建項目,直接創建一個.c文件,雙擊打開編輯
編譯的時候使用命令行編譯即可,開始菜單VS2015目錄下面的命令提示隨便打開一個(別帶ARM字樣就行),編譯命令是cl
如果真要使用調試的話:
弄一個項目在那裡,每次有要調試的內容時把整個文件的代碼復制過去。
③ vs2015怎麼編譯c
1.創建項目,【文件】》【新建】》【項目】
2.項目類型為【Win32控制台應用程序】,自己定義項目名稱,確定
3.按照Win32應用向導完成設置,【下一步】即可
4.選擇應用類型為【控制台應用程序】,附加選項為【空項目】,然後【完成】即可
5.此時在【解決方案資源管理器】中看到所創建的項目
6.右擊【源文件】,【添加】》【新建項】,創建c程序
7.編寫c程序
8.在vs2015不能直接按【F5】運行,程序會一閃而過的。應該是先選擇【生成】》【生成(此處是你的項目名稱)】編譯生成exe文件,再按【ctrl + F5】運行
④ VS2015+WDK10編譯UMDF工程生成的inf文件怎麼安裝
設置目標或測試計算機是配置計算機以便進行自動驅動程序部署、測試和調試的過程。一個測試和調試環境具有兩台計算機:主計算機和目標計算機。目標計算機也稱為逗測試計算機地。使用主機上的 Visual Studio 開發和構建驅動程序。調試程序在主機上運行並且位於 Visual Studio 用戶界面中。當測試和調試驅動程序時,驅動程序在目標計算機上運行。
主計算機和目標計算機必須能夠彼此按名稱執行 ping 操作。如果兩台計算機已加入到同一工作組或同一網路域,則此操作可能更容易。如果你的計算機位於工作組中,我們建議你使用路由器(而非集線器或交換機)連接計算機。不支持對虛擬機進行設置。
准備目標計算機以進行設置
在目標計算機上,安裝將用於運行和測試驅動程序的操作系統。
如果在 x86 或 x64 目標計算機上啟用逗安全啟動地,則禁用該功能。
如果目標計算機使用 ARM 處理器,則安裝 Windows 調試策略。則無需禁用逗安全啟動地。
在目標計算機上,運行與目標計算機平台匹配的 WDK 測試目標安裝程序 MSI。可以在 Remote 下的 Windows 驅動程序工具包 (WDK) 安裝目錄中找到該 MSI。
例如:C:\Program Files (x86)\Windows Kits\10\Remote\x64\WDK Test Target Setup x64-x64_en-us.msi
如果目標計算機運行的是 N 或 KN 版本的 Windows,則安裝適用於 N 和 KN 版本的 Windows 的媒體功能包。
如果目標計算機運行的是 Windows Server,請查找剛才通過 WDK 測試目標設置 MSI 創建的 DriverTest 文件夾。(例如:c:\DriverTest)。右鍵單擊逗DriverTest地文件夾,然後選擇逗屬性地。在逗安全地選項卡上,向逗經過身份驗證的用戶地組授予逗修改地許可權。
驗證主機和目標計算機可以彼此執行 ping 操作。打開命令提示符窗口,並輸入 ping 192.186.X.X(ip_adress)。
如果主計算機和目標計算機已加入到一個工作組,但它們位於不同的子網上,你可能必須調整某些防火牆設置,以便主計算機和目標計算機可以通信。請按照下列步驟進行操作:
兩種方法(選一即可):
方法一:
在目標計算機上的逗控制面板地中,轉到逗網路和 Internet地>逗網路共享中心地。注意你的活動網路。它可能是逗公共網路地、逗私有網路地或逗域地。
在目標計算機上的逗控制面板地中,轉到逗系統和安全地>逗Windows 防火牆地>逗高級設置地>逗入站規則地。
在入站規則列表中,查找用於活動網路的所有網路發現規則。(例如,查找所有逗配置文件地為逗專用地的網路發現規則。)雙擊每個規則,然後打開逗作用域地選項卡。在逗遠程 IP 地址地下,選擇逗任何 IP 地址地。
在入站規則列表中,查找用於活動網路的所有逗文件和列印機共享地規則。對於每個規則,雙擊該規則,將打開逗作用域地選項卡。在逗遠程 IP 地址地下,選擇逗任何 IP 地址地。
方法二:
逗控制面板地->逗系統和安全地->逗Windows防火牆地->"啟動或關閉Windows防火牆"->"關閉Windows防火牆"
設置目標計算機
現在,你可以隨時在 Visual Studio 中通過主計算機設置目標計算機。
在主計算機上,在 Visual Studio 的逗Driver地菜單中,選擇逗Test地>逗Configure Deivce地。
單擊逗Add New Device地。
在逗Network host name地中輸入目標計算機的名稱。選擇逗Provision Device and choose debugger setting地。
選擇某種調試連接類型,並輸入所需的參數。
設置過程將需要幾分鍾時間,並且可能會自動重新啟動目標計算機一到兩次。設置完成後,單擊逗完成地。
WDK 10 與 Microsoft Visual Studio 完全集成。你可以使用 Visual Studio 開發環境生成驅動程序,也可以使用 Microsoft Build Engine (MSBuild) 直接從命令行生成驅動程序。
從 Windows 驅動程序工具包 (WDK) 8 開始,MSBuild 就已經取代了在早期版本的 WDK 中使用的 Windows 構建實用工具 (Build.exe)。現在,WDK 可使用與你用於構建 Visual Studio 項目相同的編譯器和構建工具。使用早期版本的 WDK 構建的驅動程序項目必須進行轉換才能在 Visual Studio 環境中工作。你可以從命令行運行轉換實用工具,也可以通過從現有的源創建新的 Visual Studio 項目來轉換現有驅動程序。
構建驅動程序主要有以下兩種方式(選一即可)
方法一:使用 Visual Studio 構建驅動程序
構建驅動程序的方法與在 Visual Studio 中構建任何項目或解決方案的方法相同。當使用 Windows 驅動程序模板創建新的驅動程序項目時,該模板定義默認(活動)的項目配置以及默認(活動)的解決方案生成配置。
注意 你可以將使用 WDK 8 或 Windows 驅動程序工具包 (WDK) 8.1 所創建的項目和解決方案轉換為適用於 Windows 驅動程序工具包 (WDK) 10 和 Visual Studio 2015。打開項目或解決方案前,請先運行 ProjectUpgradeTool。ProjectUpgradeTool 將轉換項目和解決方案,以便可以使用 WDK 10 構建它們。
1、確保安裝在你的計算機上的 SDK 和 WDK 的版本相同。
2、在 Visual Studio 中打開驅動程序項目或解決方案。
3、在逗解決方案資源管理器地中右鍵單擊解決方案,並選擇逗配置管理器地。
4、從逗配置管理器地中,選擇與你感興趣的構建類型相對應的活動解決方案配置(例如,逗調試地或逗發布地)以及活動解決方案平台(例如,逗Win32地)。
5、選擇要構建驅動程序的目標操作系統。導航到逗驅動程序地>逗常規地中的項目屬性,然後設置 TargetVersion 屬性。
6、為驅動程序或驅動程序包配置項目屬性。 可以為部署、驅動程序簽署或其他任務設置屬性。
7、從逗構建地菜單中,單擊逗構建解決方案地 (Ctrl+Shift+B)。
方法二:
使用命令行構建驅動程序 (MSBuild)
你可以使用逗Visual Studio 命令提示符地窗口和 Microsoft Build Engine (MSBuild) 來從命令行構建驅動程序。
使用逗Visual Studio 命令提示符地窗口構建驅動程序
打開逗適用於 VS2015 的開發人員命令提示符地窗口。
在此窗口中,你可以藉助 MSBuild.exe,通過指定項目 (.VcxProj) 或解決方案 (.Sln) 文件來構建任何 Visual Studio 項目。
導航到項目目錄並為你的目標輸入 MSbuild 命令。
例如,若要使用默認的平台和配置生成名為 MyDriver.vcxproj 的全新的 Visual Studio 驅動程序項目,請導航到項目目錄並輸入以下 MSBuild 命令:
msbuild /t:clean /t:build .\MyDriver.vcxproj
語法 - 若要指定特定的配置和平台,請使用以下命令語法:
msbuild /t:clean /t:build ProjectFile /p:Configuration=<Debug|Release> /p:Platform=architecture /p:TargetPlatformVersion=a.b.c.d /p:TargetVersion=OS
例如,以下命令將為逗調試地配置、逗Win32地平台和 Windows 10 生成一個通用 Windows 驅動程序。
msbuild /t:clean /t:build .\MyDriver.vcxproj /p:Configuration="Debug" /p:Platform=Win32 /p:TargetVersion=地Windows10地 /p:TargetPlatformVersion=地10.0.10010.0地
逗TargetPlatformVersion地設置為可選項,並且允許你指定用於生成的工具包版本。默認值為使用最新的工具包。
使用 Visual Studio 中的選項增加構建輸出詳細信息的步驟
1、單擊 Tools > Options。
2、單擊逗項目和解決方案地文件夾並單擊逗生成並運行地。
3、更改逗MSBuild 項目構建輸出詳細信息地和逗MSBuild 項目構建日誌文件詳細信息地。 默認情況下,這些都設置為逗最少地。
⑤ vs2015動態庫編譯失敗
。。。你這是編譯還是編譯再啟動 DLL
⑥ VS2015的跨平台特性會對Qt帶來沖擊嗎
vs2015
支持c++開發跨平台的庫,這樣對於Qt而言會有多大的沖擊呢?將來用VS開發c++跨平台和QT開發跨平台應用發展趨勢各是怎樣的?如果現在新項目要開
發跨平台的高性能應用,如果用c++是選擇QT還是VS2015的跨平台特性呢?另外VS2015跨平台對於界面的支持如何?
注
意:不是在討論IDE,也不是在討論.net的跨平台!而是VS支持c++跨平台的特性。既然要跨平台,對於與系統無關的庫顯然是用標准c++。而涉及到
與系統相關的API的封裝,VS2015(姑且就用IDE來代稱)會向Qt一樣去封裝成統一的API嗎?或者說會去走Qt的路嗎?
各抒己見:
VS 2015 是個龐然大物,有多大呢?大家可以去它的下載頁圍觀一下:Visual Studio 2015 CTPs
但細到樓主的這個問題,其實 VS 的跨平台特性的重點還是手機 app 的開發,而且只是在一個 IDE 里開發。而不是一份代碼跨多個平台。至少從 Build cross-platform apps with Visual C++ 這篇文檔我是這么理解的。我沒有時間做的更細。如果題主了解 Qt 手機應用的開發,再下載一下 VS 2015 做個測評,就完全可以得出一個簡單的結論,根本不用提問。微軟的這個特性,野心很大,希望是能一舉拿下 iOS 和 Android 平台手機應用的開發。
不過我連這個也不看好。但我的原因很主觀:
經過了這
么多年的發展,軟體開發行業已經完全滲入了整個社會。當年的那種,比如說五筆吧,一個軟體只要是用電腦的都會用到,這種可能性已經非常小了。一個軟體解決
方案的針對性是非常強的。而它的應用場景的復雜已經遠遠超過一般人的想像。想打造一套方案,或者時髦一點,生態環境,拿下整個市場,從HPC集群到PC再
到手機,甚至路由這樣的嵌入式設備?面對這個想法,我只能呵呵了。而微軟就覺得這是可行的。更簡單地說,在前所未有的細分下,針對一個特定的任務,從開發
環境,工具鏈,到所選擇的語言都會非常地不同,這不是一個 VS 就可以滿足的。
以上是我個人覺得 VS 2015 實在是託大的理由。下面說說我對 Qt 的認識。
Qt
最早是用來實現 UI 的跨平台庫,最早如果你先在 Unix 實現了一個程序,然後想移植到 Windows 上,那是要買 License
才行的,這也是早期 Qt 的主要收入來源。之後 Qt 逐漸移植到了蘋果上,後來被諾記收了又可以在 S60 上跑。再後來被諾記賣了,於是支持
Android 。盡管最近的金主都是在希望 Qt 可以跑手機。但 Qt 最大的用戶在 KDE 上,由於它是 Linux 甚至整個類 Unix
上環境不多的可用的 GUI 程序開發框架和環境,至少一大半跑在 Unix-like 下的 GUI 程序都會用到 Qt (另外一半是 Gnome,
還有一點點是其它,……)。這部分開發者才是 Qt 整個社區的基石,而他們盡管在產品的理念上會跟風微軟和蘋果,但他們是不會在短時間內轉向 VS
的,更長時間看也不會。
當然
Qt 最近有點火,不光是國內,根據我的見識,那是因為做特定的嵌入式開發的緣故,做手機應用開發有,但並不算常見。所以, VS
就算在手機應用開發上火起來,對於 Qt 來說仍不是什麼大不了的事情。只是在短期內損失一批潛在的貢獻者而已。當然,上面可以看出,我對 VS
這玩意可以成功也持保留意見。
所以簡單地說, VS 2015 這東西目前跟 Qt 風馬牛不相及,自然也沒什麼沖擊可言。
最後補充一下:
我覺得題
主的這個提問沒有提到點子上。因為 VS 說到底還是 IDE ,而 Qt 是開發框架。兩者沒有什麼可比性。如果僅僅針對這個跨平台的特性而言。 VS
的這個方案跟沒法與 Qt 相提並論,盡管我也不看好 Qt 程序的跨平台,所以 VS 2015 的這個特性根本就沒有什麼亮點可言。
更進一步
推,題主的提問,可能只是初學者,想選一個簡單的跨平台的開發環境做學習之用。我覺得還是 Qt 吧。原因很簡單, Qt 環境比 VS
小得多,目標也確定的多。如果想賺錢,請直接去投蘋果。 當然安卓也是一個選項。 VS
看上去嘛都有,什麼都可以干,但是用上了,我估計會有種,這玩意怎麼做嘛嘛不行的感覺。如果題主是重度 VS 使用者的話另說。
先說下個人觀點,我不看好Qt。
「相對客觀」的說:
1)Qt 在iOS和Android的UI支持上只能算是一般,和原生UI相差甚遠,對平台新版本的新特性支持薄弱。VS對這方面的支持,基於喬布斯的評語「微軟太缺乏審美能力」,我也表示完全不看好。
2)業務層用Qt的庫相比個家公司自己用原生的C艹庫差別還有的。除非是哪家公司用Qt做了基礎庫,這是例外。基於VS的iOS、Android支持的編譯器是gcc和clang,WinRT是MSVC,這部分和Qt都是一致的。
3)Qt
的反射封裝或者是Meta系統封裝很重,至少要超過了c艹標準的rtti。雖然這套系統適合用來開發UI,但是作為業務層,如此重的外殼,用Qt就失去了
一部分用java、objective c
遷移到C艹的性能優勢。VS裡面由於編譯鏈的限制,而且基於llvm的coreclr支持還是幼兒期,幾乎不用考慮c#的可能性。
4)最近幾個月都在觀察QtBug 列表,上面用戶Qt對iOS、Android吐槽不斷,小Bug層出不窮,甚至有的會影響正常啟動。對WinRT的支持更不給力。VS對WinRT支持肯定會是Native的,至於其他兩個平台,得靠自己維護了。
5)Retina
支持。除了Mac平台支持穩定,其他平台只是承諾要增加支持。那個Improve Retina
支持的帖子是去年發的,今年年初發布的Qt5.4也只是完善了Mac部分和加入實驗性質的Windows、Linux支持。等到完美加入這部分支持,又是
何年何月?
6)Qt
對移動端的投入究竟能有幾斤幾兩?首先說一個不相乾的話題是,Qt對桌面跨平台的支持可謂是筋疲力竭:對Windows
8/8.1的2xDPI顯示支持(HIDPI),還需要手動設置環境變數外加程序內啟動選項選項才能開啟,不然用Qt原始方式實現的界面都是變形扭曲
的;Mac的StatusBar 中用設置了template的NSImage
何年才能有;Linux在從Qt5.1就regression消失的TrayIcon也是時隔三個大版本到即將發布的Qt
5.4.2才有修復。其6個月的漫長的開發周期,龐大而臃腫的庫,面對對更新迭代更瘋狂的移動端,Qt的表現是Qt缺乏有對iOS、Android的相關
支持,運行時家常便飯的各色crash,對WinRT的支持我認為這更象是一個hacker的項目。VS只有等VS2015才能評論。
7)我認
為跨平台的C艹支持最顯著的收益,是UI層封裝一次跨平台的組件還是業務層的代碼復用和性能優化?同1)3)6)中討論,我個人認為Qt
UI層的剝離平台相關的開發純屬扯淡,跨平台對C艹開放最大的收益還是復用高質量的基礎庫和核心業務代碼帶來的性能優勢和項目維護優勢。
8)Qt
的Mobile開發支持,本身的開發工具是平台相關的,就是說Qt不能在Windows下開發iOS和Android,Qt也不能在Linux下開發
iOS。相比Windows下VS2015
帶來CrossMobilePlatform支持,開發機器只要是Windows就可以。這點上Qt編譯鏈技術完敗。
總而言之,跨平台的移動端開發的看點會是在業務層的開發上,UI層不應該是跨平台移動端開發爭奪的重點。至於是VS 還是Qt,看官自己決定吧。
1. Qt SDK現在最新版本為5.4,按照官方說法,其LGPL協議下,提供以下目標平台的二進制開發包:
Windows Desktop x86/64
Windows Store App
Windows Phone 8.1
Android arm5/7
Android x86
MacOS
iOS
如果在GPL協議下或者之前老版本的Qt,可以支持塞班、黑莓、各種嵌入式開發板等平台。Qt支持的目標平台肯定還是比VS2015多的。
2. Qt不僅僅是一個c++界面庫,它在實現了一套基於C++的反射功能的基礎上,包含了網路、資料庫、多媒體、測試框架、國際化工具、打包部署模塊等,甚至還自己封裝了一個WebKit模塊。此外,Qt有收費才能使用的模塊:
Qt Purchasing
Qt Charts
Qt Virtual Keyboard
Qt Data Visualization
現在,除了這些傳統客戶端開發工具以外,Qt也推出了雲服務QtCloudServices。當然現在可能有變化。
3. 由於平台眾多,Qt傳統的基於QWidget界面在適配各種不同DPI的屏幕時,設計風格、控制項及字體、圖標大小等方面是會存在問題的,Qt5.4版本開始,官方宣稱解決了DPI的問題:
High-DPI support for Windows and OS X
當然
Qt5.4版本以前(包括現在),Qt官方希望大家使用QtQuick(QML,一種基於JavaScript的語言。c++與QML的關系,有點像C#
與WPF一樣)來解決觸屏和DPI的問題,使用QML開發的話,在各個目標平台顯示效果都是一樣的,並且能夠很方便的與C++代碼交互。當然,與.Net
的WPF比起來,還差很遠,但畢竟跨的平台比WPF多。Qt官方有一個用來顯示股市信息的QML Demo(http://doc.qt.io/qt-5/qtquick-demos-stocqt-example.html),在Win8、Android、WP上面顯示效果都非常好。
4. QtCreator這個IDE與Qt配合起來非常完美,在VS裡面使用Qt總感覺怪怪的。如果不使用Qt,由於C++語法過於復雜,VS這種宇宙級的IDE也不能像c#那樣來IntelliSense C++,但無論如何還是要強於Qt Creator的。
5.
VS2015中C++的跨平台,肯定不會是一次編寫處處運行(除非寫的是標准C++)。如果帶有界面(Win的MFC、WTL,Linux的X11)、或
者有用到POSIX、WIN API,怎麼可能不修改代碼直接跨平台?而Qt有自己的一套GUI、Networks等框架,如果嚴格使用Qt
SDK的標准來開發,完全可以不修改代碼,在各個平台編譯就行。
⑦ VS2015如何單個編譯源文件
不行的,VS無法編譯單個源,你這樣的三個文件實際上是在一個工程內的,也就是說是同一個項目,當然只能有一個main()。
⑧ vs2015的c語言怎麼編譯運行
按照C++創建工程
寫代碼
或者導入C文件 h文件
點工具欄裡面的編譯按鈕編譯
也可以F5直接編譯運行。
⑨ vs2015驅動開發編譯錯誤
樓主 你解決了嗎 我也遇到這樣的問題 好煩人 以前都沒有遇到過
⑩ vs2015 C語言編譯問題
你這個是不是MFC的工程?會不會和使用的系統環境有問題,win7,xp,或者win10的