Visual Studio 2012 小學習 – 編譯 TFTPD32 與 IPHLP

Windows 同時擁有 DHCP + 固定 IP一文裡提供了DHCP下設定固定 IP 的程式碼,但其實我對 Microsoft Visual Studio 不太熟。只有逼不得已的時候,才會用一下。就藉著這個機會,寫一篇簡單的安裝與編譯範例,也紀錄下這個流程。不然每次都要重新熟悉,也是挺累挺花時間的。

Visual Studio 2012 安裝

之前寫的/修改的Windows程式,都是基於 Visual Studio 2010 寫的,放到 2012 上目前測試也沒什麼問題,所以就以 2012 來當做示範的目標。感謝部落格浮雲雅築的網友所提供的 Link,讓我找到MS官方的下載位置。 最後選用 2012 Professional 的版本來做測試,現在是2018了,過了幾年搞不好就不見了,有需要的人最好先做個備份 (給自己的話: 已放在 Google Drive) 。

VSS 2012 設定

在安裝的部份,可以什麼都不用選,預設的項目已經需要 6G 的空間,也已經包含了大部份的功能。。

編譯 IPHLP – 新增IP程式

IPHLP (請參考 這個) 的程式比較簡單,所有的功能在一個 main() 裡面就可以完成,不需要其它視窗相關類的表頭與Library。所以在專案建置時,開始新的 project 要選擇空的專案,再新增一個 .c 檔就可以了。若選擇一般的視窗程式,再貼上 IPHLP的程式,反而會發生錯誤。詳細步驟說明如下,

先選擇開啟新專案

選擇主控台應用程式

選擇產生空白的專案

 

產生完成後,此時專案內沒有任何檔案,我們需從原始程式碼項目內,按右鍵,選擇新增一個。

選擇新增一個項目

檔案名稱,就用預設的就可以了。當檔案建立後,將 IPHLP程式碼內容 從文章內複制貼上。存檔後選擇建置來編譯檔案,最後結果會提示在最下方的「輸出」內,會顯示是否成功,以及產生的位置。這樣,編譯IPHLP程式就完成了,這個 “ConsoleApplication3.exe” 功能就等同 IPHLP。

編譯結果與執行檔位置

 

編譯 TFTPD32

TFTPD32 是一套蠻普遍在使用的 TFTP 的 server 程式,它也支援 DHCP Daemon、Syslog Server。工作上用到 TFTPD 的機會比較多,所以也曾經要對它做一些修改。

之前曾寫了一個步驟頗多的流程,今天為再寫這篇文章,詳細的看了一次它設定的相關目錄,會使用到 “\tftpd32\…“。一開始還以為Solution檔是預設原始碼是要在子目錄 tftpd32裡,後來才參透是整個目錄要在根目錄下的 \tftpd32 目錄裡。例如 c:\tftpd32 或 d:\tftpd32,這樣就可以簡單的編譯成功了,不需要再做修改。

下載原始碼

TFTPD32 下載頁搜尋關鍵字 source,下載下來。

下載原始碼

解壓縮至根目錄

將下載的原始碼壓縮檔,解壓縮至 C:\ 或 D:\,並重命名資料夾為 TFTPD32。這部份蠻重要的,沒這樣做的話就會編譯錯誤,或者還要去改很多設定的地方。

 

編譯程式

開啟 TFTPD32 原始碼的目錄,打開方案檔 (Solution) tftpd32.sln,這樣就會開啟所有相關的專案檔。因為專案的原始設計工具是 VisualStudio 2010,而我們目前使用的是 2012。因些會提示要更新專案的一些設定,這邊也一定要選”更新“,不然後續會編譯失敗。開始後,在專案列表內將 tftpd32 設為啟始專案,並按下除錯。就會開始編譯並,且執行產出的執行檔。

 

更新至2012設定

設定tftpd32為啟始專案,再按下偵錯工具

TFTPD32 執行視窗

 

結語

一回生二回熟,這篇文章還蠻入門的,因為我也不太會 VisualStudio, 所以廢話多了點。留下這偏紀錄,以後就不會看到 VSS 的專案就頭大了。

Latest Comments

Leave a Reply