111 lines
2.8 KiB
C++
111 lines
2.8 KiB
C++
// ListDev.cpp : Defines the class behaviors for the application.
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "ListDev.h"
|
|
#include "devtree.h"
|
|
#include "ListDevDlg.h"
|
|
|
|
#ifdef _DEBUG
|
|
#define new DEBUG_NEW
|
|
#undef THIS_FILE
|
|
static char THIS_FILE[] = __FILE__;
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CListDevApp
|
|
|
|
BEGIN_MESSAGE_MAP(CListDevApp, CWinApp)
|
|
//{{AFX_MSG_MAP(CListDevApp)
|
|
// 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()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CListDevApp construction
|
|
|
|
CListDevApp::CListDevApp()
|
|
{
|
|
// TODO: add construction code here,
|
|
// Place all significant initialization in InitInstance
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// The one and only CListDevApp object
|
|
|
|
CString g_strStartupComputerName;
|
|
CListDevApp theApp;
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CListDevApp initialization
|
|
|
|
BOOL CListDevApp::InitInstance()
|
|
{
|
|
// 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
|
|
|
|
CMyCommandLineInfo CmdLineInfo;
|
|
ParseCommandLine(CmdLineInfo);
|
|
if (CmdLineInfo.m_DisplayUsage)
|
|
{
|
|
::MessageBox(NULL, _T("Usage: ListDev [/computername <\\\\name>]"), _T("List Device"), MB_OK | MB_ICONINFORMATION);
|
|
return FALSE;
|
|
}
|
|
CListDevDlg 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;
|
|
}
|
|
|
|
|
|
const TCHAR* COMPUTERNAME = _T("ComputerName");
|
|
|
|
void
|
|
CMyCommandLineInfo::ParseParam(
|
|
LPCTSTR lpszParam,
|
|
BOOL bFlag,
|
|
BOOL bLast
|
|
)
|
|
{
|
|
if (bFlag)
|
|
{
|
|
if (!lstrcmpi(lpszParam, COMPUTERNAME))
|
|
m_WaitForName = TRUE;
|
|
else if (_T('?') == *lpszParam)
|
|
{
|
|
m_DisplayUsage = TRUE;
|
|
}
|
|
}
|
|
else if (m_WaitForName)
|
|
{
|
|
g_strStartupComputerName = lpszParam;
|
|
TCHAR Dbg[MAX_PATH];
|
|
wsprintf(Dbg, _T("ComputerName = %s\n"), lpszParam);
|
|
OutputDebugString(Dbg);
|
|
m_WaitForName = FALSE;
|
|
}
|
|
}
|