ActiveX wellbet吉祥坊的几种方法 VC++编写 – K7的专栏

ActiveX 控件是静态连锁库。,它是发展在COM 检修运转,它可以嵌入到船主要的申请中。,ActiveX 把持的先锋是OLE 控件。鉴于ActiveX 把持与功绩平台有关,到这地步,用课程语言文字功绩ActiveX 不克不及修正少许控件而不停止少许修正,可用于备选的课程语言文字,它的比分就像器具Windows 同卵双胞总体把持。如:在VC ++中功绩的ActiveX 控件,离少许修正那就够了器具。VB 中。由此可见,经过器具ActiveX 控件可以了解短工夫做成的和小的装配重用、编码共享,相应地预付款课程夸张的行动或形象率。

  从Internet 下载的ActiveX 控件,或许从其余的支持。ActiveX 控件,用户应当以任何方式精确器具它们?概括地说,单独外来ActiveX 把持在Windows 精确器具,率先,您必不可少的事物关系到单独把持纸OCX)重现到硝酸钠,以后把它放上Windows 中注册,未在Windows 中注册过的ActiveX 不器具控件。注册ActiveX 概括地说,有三种把持办法。,有区别的器具漫游,各有所长,以下引人注目议论。

一、器具 顺序对ActiveX 把持注册

  未登记签到的ActiveX 单独控件可以器具这个软件注册它,外来ActiveX 假定要将控件器具到本身的顺序中,则还必不可少的事物停止注册。。纸坐落在Windows 倾斜的system 子倾斜下。该办法的器具如次:点击开端运转;在运转对话框中输出以下命令:
regsvr32纸名>  注册单独ActiveX 控件
regsvr32 /u< 纸名摆脱ActiveX wellbet吉祥坊
  人们器具一点点带ActiveX 当器具控件时,不时它不克不及运转。,这可能性是它本身的。ActiveX 控件未注册到,在这点上,您无妨尝试器具上面的命令。那个,VC 假定用户是精确的 编码击中要害单独风趣的词,可在VC 在联机帮忙中找到其源编码。若器具VC ++,则在MSDN 压缩磁盘的\sample\VC98\MFC\controls\regsvr 中。

二、器具直立的顺序

行进软件:InstallShield

  器具 来注册ActiveX 尽管如此把持复杂,虽然它需求由用户手工注册。,当你不器具它时,你必不可少的事物手工用力打。,到这地步,这不是单独终止的receiver 收音机。作乐申请通常有单独直立的顺序。,在直立的顺序中处理ActiveX wellbet吉祥坊是相对地梦想的一种策划。器具InstallShield 能译成专业程度Setup,你也可以注册它ActiveX 控件;同时,在未来传得很远软件时,自发地登记先前注册的ActiveX 控件。办法如次:
启动InstallShield,器具Project Wizard 新建突出;
新建单独“File Group”,需求注册ActiveX 把持纸放在这时“File Group”中;
采用上述的办法“File Group”“Self Registered”属性设置为“Yes”
  越过途径仅用于夸张的行动或形象Setup 设置击中要害自发地注册ActiveX 把持的分别的途径,只要器具InstallShield 以任何方式做单独丰富的的Setup 不在场的本文的漫游内让审稿人本身看这些书。

三、将注册编码添加到申请

  其次种办法不快用于小型顺序,却更的办法是在顺序中嵌入登记码。,申请自注册的了解。它的课程办法是:

 1、器具Windows API 有或起作用LoadLibrary 装满ActiveX 控件;
 2、器具GetProcAddress 有或起作用获取ActiveX 把持击中要害登记签到效能DllRegisterServer (登记效能为DllUnregisterServer)把;
 3、呼叫登记签到效能DllRegisterServer(或出发有或起作用DllUnregisterServer)。

  上面以VC ++ 使安定的RegActivex 顺序插图画家,以任何方式在顺序中自发地注册(登记)ActiveX 控件。RegActivex 提出骨架VC ++ AppWizard 自发地发生,在此基础上添加两个菜项:注册ActiveX 控件登记ActiveX 控件。选择时注册ActiveX 控件菜工夫间,对把持注册(HANO游玩);选择时登记ActiveX 控件菜工夫间,离开把持 的注册。

  1、器具VC ++ 用单人表演文档排列申请RegActivex,其余的突出获得默认设置;
  2、向申请添加两个菜项:注册ActiveX 控件登记ActiveX 控件,途径如次:
  a、单击VC ++ 左窗“ResoureView”,双点取MENU 突出下IDR_MAINFRAME 翻开菜编辑程序;
  b、在菜编辑程序中,添加主菜注册,在注册在主菜下添加两个菜项:注册ActiveX 控件登记ActiveX 控件
  3、给出新菜项注册ActiveX 控件登记ActiveX 控件增多响应有或起作用:
  b、在资源编辑程序中,双点取MENU 击中要害IDR_MAINFRAME 翻开菜编辑程序,单击注册ActiveX 控件”, Ctrl 翻开MFC Class Wizard; 
  c、双点取Messages 在骨架中COMMAND, 注册ActiveX 控件菜项添加响应有或起作用OnRegisterReg(), 点击马上“Edit”使系牢之物OnRegisterReg() 该有或起作用添加以下编码:
void CMainFrame::OnRegisterReg()
 {
 //ActiveX 控件的道路和纸名
 LPCTSTR pszDllName=””;
  // 装载ActiveX 控件
 HINSTANCE hLib = LoadLibrary(pszDllName);
  if (hLib < (HINSTANCE)HINSTANCE_ERROR)
  {
 MessageBox(“无法使承受压力Dll !”,
后果“,MB_OK);
 return;
 }
 // 获取注册效能DllRegisterServer 地址
   FARPROC lpDllEntryPoint; 
   lpDllEntryPoint = GetProcAddress
   (hLib,_T(“DllRegisterServer”));
   // 呼叫登记签到效能DllRegisterServer
if(lpDllEntryPoint!空)
   {
   假定衰退lpDllEntryPoint)()))
   {
   MessageBox(“叫来DllRegisterServer 衰退!“,
         后果“,MB_OK);
   FreeLibrary(hLib);
   return;
   };
   MessageBox(“注册成“,”后果“,MB_OK);
   }
   else
   MessageBox(“叫来DllRegisterServer 衰退!“,
         后果“,MB_OK);
}

  c登记ActiveX 控件使安定菜项响应有或起作用的办法与上述的办法恒等的。,编码亦肖像的。,恰当地摧毁“lpDllEntryPoint=GetProcAddress(hLib,_T(“DllRegisterServer”));”改成:
 lpDllEntryPoint = GetProcAddress(hLib,_T
(“DllUnregisterServer”))
  4、编辑并调配上述的顺序,你可以增加单独可执行纸。异样要紧的是要理睬:应将ActiveX 控件纸 重现到Windows system 倾斜下。控件纸 微软出来Visual C ++ 可以找到附加到顺序员指挥的的CD-ROM。。
  5、测得结果上述的顺序:运转《Visual C ++ 附在顺序员指挥的击中要害CD-ROMgame2 顺序,若器具RegActivex 注册了 控件,顺序运转正常的;若器具RegActivex 登记了 控件则game2 不克不及运转。

寻求的来源:

Add a Comment

电子邮件地址不会被公开。 必填项已用*标注