前天去limou.net逛逛,发现了自定义协议的文章,后来发现程序要响应附加参数,MFC我没碰到过,就去网上找了,发现原来这样就行了。
void CAdditional_CmdLineDlg::OnOK()
{
LPWSTR* szArglist = NULL;
int nArgs = 0;
szArglist = CommandLineToArgvW(GetCommandLineW(), &nArgs);
if(szArglist != NULL)
{
//szArglist就是保存参数的数组
//nArgs是数组中参数的个数
//数组的第一个元素表示进程的path,也就是szArglist[0],其他的元素依次是输入参数。
for (int i=0; i<nArgs; i++)
{
AfxMessageBox((CString)szArglist[i]);
}
}
LocalFree(szArglist);
return;
CDialog::OnOK();
}