下面的例子可以用來判斷程式執行的時候是否使用了
-c,-s
或者-p
選項,具體程式中大家可以按照例子做簡單改動即可。
第一步:從
c***mandlineinfo
過載乙個類
cwzd***mandlineinfo
,實現方式如下
#if
!defined
wzd***mandlineinfo_h
#define
wzd***mandlineinfo_h
// wzd***mandlineinfo.h : header file //
// cwzd***mandlineinfo window
class
cwzd***mandlineinfo
: public
c***mandlineinfo ;
//
#endif
標頭檔案結束,下面是
cpp檔案
// wzd***mandlineinfo.cpp : implementation file //
#include
"stdafx.h"
#include
"wzd***mandlineinfo.h"
#ifdef
_debug
#define
newdebug_new
#undef
this_file
static
char
this_file
= __file__;
#endif //
// cwzd***mandlineinfo
cwzd***mandlineinfo
::cwzd***mandlineinfo
( )
cwzd***mandlineinfo
::~cwzd***mandlineinfo
( )
//
void
cwzd***mandlineinfo
::parseparam
(const
tchar
* pszparam
, bool
bflag,
bool
blast)
// m_strfilename gets the first nonflag name
elseif(
m_strfilename
.isempty
())
c***mandlineinfo
::parseparam
(pszparam
, bflag
, blast
) ; }
第二步:在
類中新增成員變數:
public:
cwzd***mandlineinfo
m_cmdinfo;
第三步:在
initinstance
()函式中修改如下**
// parse ***mand line for standard shell ***mands, dde, file open
parse***mandline
(m_cmdinfo
);
// dispatch ***mands specified on the ***mand line if
(!processshell***mand
(m_cmdinfo
))
return
false;
如此即可以在程式的其它地方通過
取得cwzd***mandlineinfo
物件,然後通過判斷起成員變數
m_bcflag
等等就能知道是用哪個選項執行的了。
C 帶引數執行方法
比如 aa.exe auto aa.exe main 兩組字尾,要求分別執行aa的某個執行緒,比如aa.exe auto開啟from1,aa.exe main開啟from2 由於需要修改program的main方法,需要更加謹慎,因為乙個結構清晰的main對於後期維護是乙個很好的幫助。以下的 將解析...
MFC程式執行順序
2 winmain登場 extern c int winapi twinmain hinstance hinstance,hinstance hprevinstance,lptstr lpcmdline,int ncmdshow twinmain函式的 t 是為了支援unicode而準備的乙個巨集。...
MFC程式執行順序
2 winmain登場 extern c int winapi twinmain hinstance hinstance,hinstance hprevinstance,lptstr lpcmdline,int ncmdshow twinmain函式的 t 是為了支援unicode而準備的乙個巨集。...