Activex 一控件如何对参数处理 ,新手 上班第一天接到这东西看不懂不理解

原创 2007年10月09日 12:06:00

STDMETHODIMP CTracker::execute(VARIANT varCommand, VARIANT varParameter, VARIANT *RetVal)
{
 ::VariantInit(RetVal);
 RetVal->vt = VT_BSTR;

 if ((varCommand.vt != VT_BSTR)  || (varCommand.bstrVal == NULL)) {
  RetVal->bstrVal = _com_util::ConvertStringToBSTR("File Not Found!");
  return S_OK;
 }

 FILE *command = fopen(_com_util::ConvertBSTRToString(varCommand.bstrVal),_T("r"));
 if (command) {
  fclose(command);  
  
  char commandLine[1024];
  if ((varParameter.vt == VT_BSTR) && (varParameter.bstrVal != NULL))
   sprintf(commandLine,
           //"/"%s/" /"%s/"",
     "/"%s/" %s",
     _com_util::ConvertBSTRToString(varCommand.bstrVal),
     _com_util::ConvertBSTRToString(varParameter.bstrVal));
  else
   sprintf(commandLine,
           "/"%s/"",
     _com_util::ConvertBSTRToString(varCommand.bstrVal));

  PROCESS_INFORMATION processInfo;              
  STARTUPINFO   startupInfo;  
  memset(&startupInfo,0,sizeof(STARTUPINFO));  
  startupInfo.cb=sizeof(STARTUPINFO);  
  startupInfo.dwFlags=STARTF_USESHOWWINDOW; 
  startupInfo.wShowWindow=SW_SHOW;  

  BOOL bRetValue=::CreateProcess(NULL,  
               (LPTSTR)(LPCTSTR)commandLine,  
                                       NULL,  
                                       NULL,  
                                       FALSE,  
                                       NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,   //?
                                       NULL,  
            NULL,
                                       &startupInfo,  
                                       &processInfo); 
  
  char message[1024];
  if (bRetValue)
   sprintf(message,"Command:%s/nExecuted Sucessfully!",commandLine);
  else {
   DWORD error = GetLastError();
   LPVOID lpMsgBuf;
   FormatMessage(
    FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
    NULL,
    error,
    MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
    (LPTSTR) &lpMsgBuf,
    0,
    NULL);
   sprintf(message,"Command:%s/nExecuted Falied!/nError Code:%d/nError Message:%s",commandLine,error,lpMsgBuf);
  }
  RetVal->bstrVal = _com_util::ConvertStringToBSTR((LPCTSTR)message);
  
 } else{
  //command not found and to download it
  RetVal->bstrVal = _com_util::ConvertStringToBSTR("File Not Found!");
 }
 
 return S_OK; 

 

那位高手给指点下

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/A_102/article/details/1816618

Android程序员第一天上班

2017-12-18,也就是昨天。是我Android开发工作的第一天,从学校走向社会的重要一步!作为一个程序猿,也应该要有自己的IT博客,今后会时不时更新一些内容,供广大学生,应届生参考参考,共勉! ...
  • LI_YU_CSDN
  • LI_YU_CSDN
  • 2017-12-19 23:48:07
  • 82

第一天上班见面用英语打招呼

A: Welcome aboard! B: Thank you, I’m delighted to be working here, Mr. Buchwald. A:欢迎你来本公司工作! B:谢...
  • shanyou
  • shanyou
  • 2006-11-24 21:44:00
  • 650

2017--写在新年上班第一天

今天早起赶着来上班,去年习惯的原因,下了地铁找了辆OFO骑行到四方大厦楼下。 然后来到办公场地,看看时间快9点钟了,还好没有迟到。项目经理等已经到了,有几位老同事还没有来。感觉是新年第一天上班,工作的...
  • lixiaotao_1
  • lixiaotao_1
  • 2017-02-06 12:13:32
  • 336

2015--一年的开始--写在新年上班的第一天

2014年,从春节开始出来实习,到转正,再到今天,已经满一年了。 记得是14年的初十开始出来找工作,然后再2月17号在现在的这家公司开始实习。感觉整个找工作的过程挺顺利的,第一次过来面试的时候,记得是...
  • WangXiaoMing099
  • WangXiaoMing099
  • 2015-02-24 23:01:35
  • 537

作为程序员上班的第一天

2014年07月01日,今天
  • xjb241002
  • xjb241002
  • 2014-07-01 22:19:58
  • 1757

第一天上班,无事可做~~~~~

上星期面试OK,今天第一天上班,看了一天文档。随便建了个BLOG。
  • piaolingyy
  • piaolingyy
  • 2005-11-11 14:37:00
  • 525

《当程序员的那些快乐日子》(八)第一天上班

写本系列文章的原因有三个: 1.在csdn上看到系列文章《当程序员的那些狗日日子》,觉得作者讲的太心酸。所以我就出个喜剧,让大家乐乐。 2.最近工作安排的不是很紧,就是俗话说的闲的那里有点...
  • coding_or_coded
  • coding_or_coded
  • 2011-09-29 21:04:55
  • 5396

未能实例化这个ActiveX控件"****",因为这需要设计时授权”

1 Lic文件也要随ocx一起发布才行。 ocx有代码访问Lic文件,只要保证这段代码没问题就行,一般发布时,lic安装到system下 2 我把ocx里面得到序列号的部分直接返回true,然后再编...
  • wl_fln
  • wl_fln
  • 2013-12-03 10:25:00
  • 3712

java开发第一天该做些什么?

对于it行业,三、四月是个跳槽高峰期,很多同行们都会选择这个时候跳槽,对于一个新手而言,能够找到一家满意的公司,是件非常开心的事情,但是入职第一天,对于很多新人而言,即使开心,也是非常担心受怕的一天,...
  • will_443238794
  • will_443238794
  • 2017-04-10 21:03:23
  • 1569

网页向ActiveX控件传递参数

  • 2010年07月02日 09:31
  • 80KB
  • 下载
收藏助手
不良信息举报
您举报文章:Activex 一控件如何对参数处理 ,新手 上班第一天接到这东西看不懂不理解
举报原因:
原因补充:

(最多只允许输入30个字)