📄 newclient.cpp
字号:
// newclient.cpp : Defines the class behaviors for the application.
//
#include "stdafx.h"
#include "newclient.h"
#include "newclientDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CNewclientApp
BEGIN_MESSAGE_MAP(CNewclientApp, CWinApp)
//{{AFX_MSG_MAP(CNewclientApp)
// NOTE - the ClassWizard will add and remove mapping macros here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG
ON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CNewclientApp construction
CNewclientApp::CNewclientApp()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}
/////////////////////////////////////////////////////////////////////////////
// The one and only CNewclientApp object
CNewclientApp theApp;
/////////////////////////////////////////////////////////////////////////////
// CNewclientApp initialization
BOOL CNewclientApp::InitInstance()
{
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif
NET_DVR_Init();
int isupport = NET_DVR_IsSupport();
if (!(isupport & NET_DVR_SUPPORT_DDRAW))
{
//AfxMessageBox("Graphic adapter can not support!");
//return FALSE;
}
if (!(isupport & NET_DVR_SUPPORT_SSE))
{
//AfxMessageBox("Need CPU above PIII!");
//return FALSE;
}
if (!(isupport & NET_DVR_SUPPORT_BLT))
{
//AfxMessageBox("Graphic adapter can not support!");
//return FALSE;
}
if(!F_GetSystemInfo())
{
//AfxMessageBox("Get system information error!");
}
CNewclientDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
// Since the dialog has been closed, return FALSE so that we exit the
// application, rather than start the application's message pump.
return FALSE;
}
BOOL CNewclientApp::F_GetSystemInfo()
{
DWORD dw=GetLogicalDriveStrings(0,NULL);
LPTSTR pAllDrivers=new char[dw];
::GetLogicalDriveStrings(dw,pAllDrivers);
LPTSTR pDriver=pAllDrivers;
char tempDriver[26];
DWORD DriverNum=0;
while(pDriver[0]!=0)
{
tempDriver[DriverNum++]=*pDriver;
pDriver=_tcschr(pDriver,0)+1; //next driver
}
//volume information
TCHAR lpVolumeNameBuffer[200];
DWORD dwVolumeSerialNumber,dwMaxComLength;
DWORD dwFileSystemFlags;
TCHAR lpFileSystemNameBuffer[50];
DWORD HardNum=0;
for(DWORD num=0;num<DriverNum;num++)
{
CString csRootPath;
csRootPath.Format("%c%s",tempDriver[num],":\\");
if(GetDriveType(csRootPath)==DRIVE_FIXED)
{
if(GetVolumeInformation(csRootPath,lpVolumeNameBuffer,sizeof(lpVolumeNameBuffer),&dwVolumeSerialNumber,
&dwMaxComLength,&dwFileSystemFlags,lpFileSystemNameBuffer,sizeof(lpFileSystemNameBuffer)))
{
this->m_cHardDriver[HardNum++]=tempDriver[num];
}
}
}
m_iDriverNum=HardNum;
delete[] pAllDrivers;
return TRUE;
}
int CNewclientApp::ExitInstance()
{
// TODO: Add your specialized code here and/or call the base class
NET_DVR_Cleanup();
return CWinApp::ExitInstance();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -