星期四, 10月 12, 2006

Week 4: 課程紀實 (2006/10/12)

Week 4 的課程著重在如何建立一個視訊擷取視窗 ( capCreateCaptureWindow ) 與將其與視訊裝置連接起來 ( capDriverConnect ), 讓視訊的畫面可以顯示在我們所開發的 BCB 程式之中。

今天的個別討論則是和 捷舲, 峰賢 還有資管系來修的兩位同學 育如欣雯 討論。和 捷舲 討論完後, 我才發現他的問題其實 小安 已經在部落格幫她解答了。峰賢的問題 比較棘手, 說實在的, 我也沒有遇過, 也不知道該怎麼解決, 只好胡亂嘗試一通!

我們也嚐試了在 Google 用 DWORD FAR PASCAL VideoForWindowsVersion 這串文字搜尋, 果真還 有人遇過相同的問題, 在椰林風情 BBS 的 Programming 中問過, 只不過還是沒有找到解答就是了。

後來, 為了確認程式出問題的點在哪? 只好先將所有的程式碼刪去, 看看會不會有相同的問題! 結果還是一樣, 只好再把 #include <vfw.h> 這行刪去, 程式果然就可以執行了。根據編譯程式的錯誤訊息, 很顯然地, BCB 編譯器似乎看不懂 vfw.h 中的 Delphi 的語法, 可是別人都沒有這樣的問題。

最後, 我把 #include <vfw.h> 加回去 峰賢 的程式中, 不過是放在第二行, 也就是 #include <vcl.h> 的後面, 所有的錯誤訊息就消失了。

原來這兩行 #include 的次序是不可以寫相反的, 把 #include <vfw.h> 寫在前面, BCB Compiler 是看不懂 Delphi 的宣告語法的, 先 #include <vcl.h> 之後, 很可以認得用 Delphi 寫成的 vfw.h 了。

這真是一次難得的 debug 經驗!

沒有留言: