Share.cpp
资源名称:视频会议系统.rar [点击查看]
上传用户:popouu88
上传日期:2013-02-11
资源大小:2894k
文件大小:3k
源码类别:
IP电话/视频会议
开发平台:
Visual C++
- // Share.cpp : Defines the initialization routines for the DLL.
- //
- #include "stdafx.h"
- #include "Share.h"
- #include "MainFrame.h"
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
- #endif
- //
- // Note!
- //
- // If this DLL is dynamically linked against the MFC
- // DLLs, any functions exported from this DLL which
- // call into MFC must have the AFX_MANAGE_STATE macro
- // added at the very beginning of the function.
- //
- // For example:
- //
- // extern "C" BOOL PASCAL EXPORT ExportedFunction()
- // {
- // AFX_MANAGE_STATE(AfxGetStaticModuleState());
- // // normal function body here
- // }
- //
- // It is very important that this macro appear in each
- // function, prior to any calls into MFC. This means that
- // it must appear as the first statement within the
- // function, even before any object variable declarations
- // as their constructors may generate calls into the MFC
- // DLL.
- //
- // Please see MFC Technical Notes 33 and 58 for additional
- // details.
- //
- /////////////////////////////////////////////////////////////////////////////
- // CShareApp
- BEGIN_MESSAGE_MAP(CShareApp, CWinApp)
- //{{AFX_MSG_MAP(CShareApp)
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
- /////////////////////////////////////////////////////////////////////////////
- // CShareApp construction
- CShareApp::CShareApp()
- {
- }
- /////////////////////////////////////////////////////////////////////////////
- // The one and only CShareApp object
- CShareApp theApp;
- extern "C" __declspec( dllexport ) CWnd * CreateShareWnd( bool ( * OnShare )( void * pContext , CWnd * pShareWnd , char * buffer , int size ) , void * pContext , const char * username )
- {
- AFX_MANAGE_STATE(AfxGetStaticModuleState());
- //创建窗口
- CMainFrame * frame = new CMainFrame( );
- frame->OnShare = OnShare;
- frame->pContext = pContext;
- frame->userName = username;
- return frame;
- }
- extern "C" __declspec( dllexport ) void SetShareMessage( CWnd * pShareWnd , char * buffer , int size )
- {
- AFX_MANAGE_STATE(AfxGetStaticModuleState());
- CMainFrame * frame = ( CMainFrame * )pShareWnd;
- if( buffer && size && ::IsWindow( frame->GetSafeHwnd( ) ) && ::IsWindow( frame->GetView( )->GetSafeHwnd( ) ) )
- {
- switch( *( int * )buffer )
- {//显示位图
- case VIDEO : frame->GetView( )->DrawBitmap( buffer , size ); break;
- //鼠标键盘的命令
- case COMMAND : frame->GetView( )->DoCommand( buffer , size ); break;
- //设定控制权
- case CONTROL : frame->GetView( )->DoControl( buffer , size ); break;
- //全屏显示
- case FULLSCREEN : frame->PostMessage( WM_COMMAND , ID_FULLSCREEN ); break;
- }
- }
- }