顯示具有 VS的使用問題 標籤的文章。 顯示所有文章
顯示具有 VS的使用問題 標籤的文章。 顯示所有文章

2014年10月27日 星期一

[8] fatal error C1900



  • 重灌VS2008 professional版遇到舊程式碼編譯出錯,訊息如下
    • fatal error C1900: Il mismatch between 'P1' version '20080116' and 'P2' version '20070207'
  • 解決辦法: 安裝VS2008 SP1
    • http://www.microsoft.com/zh-tw/download/details.aspx?id=10986

2014年4月24日 星期四

[7] VS2008 如何為執行檔加入icon

1. 準備icon 可使用http://www.ifreesite.com/favicon/ 轉成桌面用較大的圖示
2. 添加資源檔 將轉好的icon匯入
3. 編譯 預設就會出現囉~

ps1.
這個只會出現在未執行時

ps2.
若要在程式執行時的視窗使用自己的圖示,請在寫代碼在程式中
以使用QT為例
QPixmap pixImg("..\\Resource\\img\\keyicon.png");
test_form->setIcon(pixImg);


2014年3月12日 星期三

[4] VS2008如何遠端偵錯

以DLL放置遠端電腦,使用本機程式讀取為例

[一] 在要放置DLL的電腦啟動遠端偵錯工具

[二] 工具->選項,設定驗證方式及port和可偵錯時間(可加長)

[三] 打開本機端的source code,打開專案屬性,確定停用最佳化,以及打開產生偵錯資訊


[四] 編譯產生DLL檔和符號檔(pdb)

[五] 將DLL放置遠端同目錄,供其他程式載入,將pdb放置與本機成是相同位置(好像可以不用放,VS會自己找)

[六] 使用 VS->工具->附加置處理序

[七] 選擇 遠端,輸入遠端的IP及之前設定的port,選擇載入此DLL的程序(此圖舉例),按附加

[八] 添加中斷點,執行本機端程式,即可偵錯

[PS]
若中斷點找不到符號?
1. 可能是code有更動,符號對不到,重新編譯,重放符號檔及DLL
2. DLL和pdb的放置位置不一樣
3. 最佳化未停用

2014年3月11日 星期二

[3] VS 如何忽略警告

[一] 忽略警告設定,可能是C的舊語法不安全造成

[2] VS如何不顯示console


[一] debug顯示console


[二] release顯示console

2013年11月13日 星期三

[1] VS error LNK2005

[一] msvcprtd.lib(MSVCP90D.dll) :
設定C/C++ >> 程式碼產生 >> 執行階段程式庫

多執行緒偵錯 (/MTd) /MT /MD

2013年10月31日 星期四

[5] 以MSBuild建置方案

以MSBuild建置方案


輸入set PATH=%PATH%;%WINDIR%\Microsoft.Net\Framework\v4.0.30319
建置sln




參考:

出處

http://www.syscom.com.tw/ePaper_Content_EPArticledetail.aspx?id=136&EPID=167&j=5&HeaderName=%E7%A0%94%E7%99%BC%E6%96%B0%E8%A6%96%E7%95%8C

淺談MSBuild及簡單實作

作者/林民勗
[發表日期:2011/8/1]

前言

MSBuild(Microsoft Build Engine),是一個.NET程式的建置平台,可以用來執行自動化建置流程,類似於Java的Nant工具,在Microsoft Visual Studio 2005以上版本中已包含此項工具,本文撰寫的目地是以簡單的方式介紹MSBuild,並以簡單實際操作,教導讀者如何去使用MSBuild這項工具,爾 後可進階運用於快速且自動化發佈及測式程式。

MSBuild專案檔

MSBuild專案檔,採用XML為基礎的架構,使其容易擴充屬性,也較容易理解內容,其檔案命原則為*.*proj,第一個*為檔案名稱,第二個*為專案的類型,若為VB則是*.vbproj,亦可改成C#的cs;本節將簡單介紹MSBuild專案檔中基本項目。

項目Item

項目Item,是用來定義建置系統時所輸入的內容,通常用於定義要Compile的項目、專案參考的路徑、Import的元件等等,可放入多組內容;項目集合Item使用的標籤為,在整個專案檔中,可以使用@(Item名稱)來參考項目集合,EX: @(Compile),如下圖所示:


《圖一》項目Item Sample


屬性Property

屬性Property,可用來設定建置時的參數,可放入多組內容,所使用的標籤為,在整個專案檔中,可以使用$(Property名稱)來參考屬性集合的內容,Ex:$ BuildDir,如下圖所示:


《圖二》屬性Property Sample


目標Target

目標Target,是將工作Task以順序組成群組,也就是工作的集合,可以放入多組內容,所使用的標籤為,如下圖所示:


《圖三》目標Target Sample


工作Task

工作Task,用來執行Compile,可以用來做Copy、建立目錄等工作,使用於Target標籤之中,如下圖所示:


《圖四》工作Task Sample


簡單實作

本節將介紹MSBuild的實際操作,讀者可以透過下面步驟實際操作。

建立應用程式

1.建立資料夾SampleApp:於要測試的資料夾滑鼠右鍵,新增,資料夾


《圖五》建立測試資料夾1


《圖六》建立測試資料夾2


2.於SampleApp資料夾中新增文字文件,並重新命名為SampleApp.cs


《圖七》新增測試應用程式1


《圖八》新增測試應用程式2


3.以文字編輯器編輯SampleApp.cs


《圖九》編輯應用程式1


4.貼入下列文字到SampleApp.cs,並儲存


《圖十》



《圖十一》編輯應用程式2


5.建立專案檔

6.於SampleApp中新增文字文件,並重新命名為SampleApp.csproj


《圖十二》建立專案檔


7.以文字編輯器編輯SampleApp. csproj

8.貼入下列文字到SampleApp.cs,並儲存


《圖十三》



《圖十四》編輯專案檔


9.建置應用程式

10.打開命令提示字元(Commond Mode)

開始→執行,輸入cmd,按確認


《圖十五》呼叫提示命令字元模式



《圖十六》提示命令字元模式視窗


11.擴充 Path

12.以包含 MSBuild

輸入set PATH=%PATH%;%WINDIR%\Microsoft.Net\Framework\v4.0.30319


《圖十七》擴充Path


14.入測試資料夾

輸入CD 要測試的資料夾


《圖十八》進入測試資料夾


15.建置應用程式

輸入MSBuild SampleApp.csproj


《圖十九》以MSBuild建置專


16.測試建置好的程式

輸入SampleApp,得到結果”Hi, This is a sample”


《圖二十》測試建置結果


結論

MSBuild 這項工具,可以用來執行自動化建置流程,透過快速且自動化發佈及測式程式,不必每次建置專案時都開啟Visual Studio,可以節省程式設計師及版本控制人員在建置專案時所花費的時間,且由於命令提示字元模式下建立程式,因此可以透過其它指令,如XCopy等方 式,快速過版,真的是非常好的一項工具。

2011年1月5日 星期三

[6] vs2005c++專案屬性字元集

傳入的參數字串變成亂碼,為何會如此?

原因是因為vs2005c++專案屬性字元集預設為使用unicode字元集。

而我們在『命令提示字元』視窗中輸入的並非unicode字元集而是多位元組字集(中文系統的關係),所以ex2.exe所接受的字串參數無法正確顯示,

我們只要將專案的一般屬性中字元集屬性改成未設定或使用多位元組字集,重新編譯專案,即可解決此問題。