關于在BCB60中用directshow齣現的問題,請幫忙解決 |
尚未結案
|
Sticker
一般會員 發表:1 回覆:7 積分:1 註冊:2003-05-28 發送簡訊給我 |
[Linker Error] Unresolved external '_MEDIATYPE_Video' referenced from C:\CAPTURE\PLAYCAP\RELEASE\PLAYCAP.OBJ
[Linker Error] Unresolved external '_PIN_CATEGORY_PREVIEW' referenced from C:\CAPTURE\PLAYCAP\RELEASE\PLAYCAP.OBJ 我的lib已經用暸網上提供的borlandc的directx lib,可是還是齣現以上的錯誤,不知那個頭文件有這兩個定義,請熟悉的高手指點指點。
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
Sticker您好:
您的問題與下面連結似乎類似
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=28051
先看看能不能解決您的問題,您指的是這篇討論嗎??
如果是的話麻煩再等其他高手解答囉 順心 <>~我也是在學習的階段,所以請您多多見諒與指教~> 發表人 -
|
Sticker
一般會員 發表:1 回覆:7 積分:1 註冊:2003-05-28 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
[Linker Error] Unresolved external ...
即然是在 Link 時才發生問題,以此篇
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=28051
SharonLee 所說的,您有可能發生的問題是 lib 沒有轉好,導致 BCB 無法正常 link,或是您的 lib 已轉好,但忘了加到您的 project 中。 ■要如何知道您的 LIB 有沒有轉好呢?
可以使用以下的方式:(例如您有的 dllbyVC.lib 放在 C:\ 下) c:\>tlib dllbyVC.lib,dllbyVC.lst
TLIB 4.5 Copyright (c) 1987, 1999 Inprise Corporation
Error: Bad header in input LIB 如果是正常已轉好 for BCB 可用的話,則不會有紅色的錯誤訊息,同時在 C:\ 下可以看到 dllbyVC.lst 這個列表檔,在此列表檔內可以看到所有可以用的函式列表。
如果您有加入 dllbyVC.lib 但在 dllbyVC.lst 中找不到您所用的函式,那即使將這個檔案加入到您的專案對於 Unresolved external 的錯誤也是沒用的。 ■如何產生 dllbyVC.dll for BCB 用的 .lib 檔呢?
可以使用以下的方式:(例如您有的 dllbyVC.dll 放在 C:\ 下) c:\>implib dllbyVC.lib dllbyVC.dll 則在 C:\ 下可以找到產生出來的 dllbyVC.lib 沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... http://dllee.adsldns.org 介紹Shells,LiteStep,GeoShell....
------
http://www.ViewMove.com |
Sticker
一般會員 發表:1 回覆:7 積分:1 註冊:2003-05-28 發送簡訊給我 |
|
Sticker
一般會員 發表:1 回覆:7 積分:1 註冊:2003-05-28 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
引言: 謝謝dllee。是這樣的,我是按那個連接的網頁上的下載的lib文件。從錯誤提示來看,應該是沒有找到_MEDIATYPE_Video_PIN和_CATEGORY_PREVIEW這樣的Macro定義。我就不知道include文件是否需要脩改。我用的是dx9的lib和SDK。如果是這樣,那請您用文件搜尋的軟體或 Windows 內建的找檔案的功能,看看 _MEDIATYPE_Video_PIN 和 _CATEGORY_PREVIEW 是放在那個檔內(.DLL 、.LIB 或 .Hxx),再看看該檔是否已在您的專案中,如果不是就再加入 .lib 或 #include .Hxx 再試試看。 沒空更新的網頁... http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... http://dllee.adsldns.org 介紹Shells,LiteStep,GeoShell....
------
http://www.ViewMove.com |
Sticker
一般會員 發表:1 回覆:7 積分:1 註冊:2003-05-28 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
|
paul67
一般會員 發表:20 回覆:18 積分:7 註冊:2003-03-17 發送簡訊給我 |
請問一下Sticker兄.. 您是怎樣將Direct Show引用在C++ Builder呢??
我之前已照其它文章將DirectX需要用的header檔和lib檔都
引用進來..
但還是找不到一些interface的定義呢!
請問我是漏掉什麼呢??
以下是我簡單測試程式..
HRESULT InitCaptureGraphBuilder(void) { IGraphBuilder **ppGraph, // Receives the pointer. ICaptureGraphBuilder2 **ppBuild // Receives the pointer. if (!ppGraph || !ppBuild) { return E_POINTER; } IGraphBuilder *pGraph = NULL; ICaptureGraphBuilder2 *pBuild = NULL; // Create the Capture Graph Builder. HRESULT hr = CoCreateInstance(CLSID_CaptureGraphBuilder2, NULL, CLSCTX_INPROC_SERVER, IID_ICaptureGraphBuilder2, (void**)&pGraph); if (SUCCEEDED(hr)) { // Create the Filter Graph Manager. hr = CoCreateInstance(CLSID_FilterGraph, 0, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void**)&pGraph); if (SUCCEEDED(hr)) { // Initialize the Capture Graph Builder. pBuild->SetFiltergraph(pGraph); // Return both interface pointers to the caller. *ppBuild = pBuild; *ppGraph = pGraph; // The caller must release both interfaces. return S_OK; } else { pBuild->Release(); } } return hr; // Failed }但會發生 Undefined symbol IGraphBuilder; Undefined symbol ppGraph等等的 Error.. 發表人 - |
jvory2k
一般會員 發表:2 回覆:5 積分:1 註冊:2003-12-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |