szy41 2005年03月23日
编译出错,请大家帮忙看看.(directshow的例子)
--------------------Configuration: MEDIAR42 - EMULATOR: X86 Win32 (WCE emulator) Debug--

------------------
Platform header files are up-to-date...

MEDIAR42 - 0 error(s), 0 warning(s)
--------------------Configuration: 3 - EMULATOR: X86 Win32 (WCE emulator) Debug---------

-----------
Compiling...
3.cpp
Linking...
corelibc.lib(crtstrta.obj) : error LNK2019: unresolved external symbol _main referenced

in function _mainACRTStartup
EMULATOR__X86Dbg/3.exe : fatal error LNK1120: 1 unresolved externals
Error PB2505: Error executing link.exe.

3.exe - 3 error(s), 0 warning(s)

以上是错误,源码是sdk中的一个例子,我改了一下,现在只有这一个错了.

#include <windows.h>
#include <streams.h>

#define CLASSNAME "VideoWindow"

IGraphBuilder *pGraph = NULL;
IMediaControl *pMediaControl = NULL;
IVideoWindow *pVidWin = NULL;
HWND g_hwnd;

void PlayFile(void)
{
// Create the filter graph manager.
CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC,
IID_IGraphBuilder, (void **)&pGraph);
pGraph->QueryInterface(IID_IMediaControl, (void **)&pMediaControl);
pGraph->QueryInterface(IID_IVideoWindow, (void **)&pVidWin);

// Build the graph.
pGraph->RenderFile(L"clock.avi", NULL);

//Set the video window.
pVidWin->put_Owner((OAHWND)g_hwnd);
pVidWin->put_WindowStyle(WS_CHILD | WS_CLIPSIBLINGS);

RECT grc;
GetClientRect(g_hwnd, &grc);
pVidWin->SetWindowPosition(0, 0, grc.right, grc.bottom);

// Run the graph.
pMediaControl->Run();
}

void CleanUp(void)
{
pVidWin->put_Visible(OAFALSE);
pVidWin->put_Owner(NULL);
pMediaControl->Release();
pVidWin->Release();
pGraph->Release();
}

// Message handler
long FAR PASCAL WindowProc( HWND hwnd, UINT msg, UINT wParam, LONG lParam)
{
switch (msg)
{
case WM_DESTROY:
CleanUp();
PostQuitMessage(0);
break;
default:
return (DefWindowProc(hwnd, msg, wParam, lParam));
}
return(NULL);
}

// Main
int PASCAL WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPWSTR pCmdLine, int nCmdShow)
{
MSG msg;
WNDCLASS wc;

CoInitialize(NULL);

ZeroMemory(&wc, sizeof wc);
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInst;
wc.hIcon = NULL;
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground = (HBRUSH)GetStockObject( BLACK_BRUSH );
wc.lpszMenuName = NULL;
wc.lpszClassName = _T(CLASSNAME);
RegisterClass( &wc );

g_hwnd = CreateWindow(
_T(CLASSNAME),
_T("DirectShowSample"),
WS_OVERLAPPED,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInst,
NULL);

ShowWindow( g_hwnd, nCmdShow );
UpdateWindow( g_hwnd );
PlayFile();

while( GetMessage( &msg, NULL, 0, 0 ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}

CoUninitialize();
return msg.wParam;
}
...全文
125 点赞 收藏 10
写回复
10 条回复

还没有回复,快来抢沙发~

发动态
发帖子
嵌入开发(WinCE)
创建于2007-09-28

8160

社区成员

4.1w+

社区内容

硬件/嵌入开发 嵌入开发(WinCE)
社区公告
暂无公告