当程序中需要调用ocx控件,但未注册控件时,会出现如下错误。

因此,要正确启动程序,需要先注册ocx控件。

当进行注册还报错,一般有三种情况:

1、文件不存在或者路径错误;

2、没有以管理员身份注册;

3、该空间缺失依赖库

并且,WIN10系统下有两种操作方式。

第一种,在控件exmaple.ocx所在路径以管理员身份打开powershell,输入:

regsvr32.exe example.ocx

注册成功会出现如下提示框,表示成功,然后就能正常运行程序。

但是往往每次使用前都要用命令行注册很麻烦,特别是给客户时,有的客户不会注册,此时就需要用第二种方法——用bat脚本实现ocx的自动注册,每次使用前,只需以管理员身份运行编写好的bat程序即可完成注册。

bat(Bat To Exe Converter)是批处理文件类型,batch的意思。

打开bat软件->新建,输入

@pushd %~dp0   //获得bat文件执行的路径
regsvr32 example.ocx
@popd

或者参考自:https://blog.csdn.net/guo_lei_lamant/article/details/79711066

@echo off  :: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"  REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (  echo Requesting administrative privileges...  goto UACPrompt
) else ( goto gotAdmin )  :UACPrompt  echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"  echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"  "%temp%\getadmin.vbs"  exit /B  :gotAdmin  if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )  pushd "%CD%"  CD /D "%~dp0"
:--------------------------------------
regsvr32 example.ocx

保存到ocx文件所在目录,命名为regsvr.bat。

然后先以管理员身份运行regsvr.bat,就能完成注册。

用PUSHD/POPD获取bat文件的执行路径

  • PUSHD %~dp0
  • %~dp0 是对%0的扩展,d是drive,也就是盘符,p是路径,所以%~dp0是指当前批处理所在的完整路径(包括盘符)。pushd是设定工作目录。所以 PUSHD %~dp0 就是设定批处理所在的目录为工作目录
  • PUSHD  "%~dp0test"
  • "%~dp0test"也就是批处理所在目录下test目录,所以 PUSHD %~dp0test就是设定批处理所在的目录下的test目录为工作目

具体可参考:https://blog.csdn.net/ljzcom/article/details/80332865

使用bat注册ocx相关推荐

  1. .bat文件注册.ocx+win8开机获得管理员权限+运行程序自动注册.ocx

    本文主要是针对做的项目遇到的问题写的东西. 此项目是基于VS2010开发,C++编写算法部分,界面部分为C#,这就需要将C++的部分做成ActiveX控件,拖到C#界面中.我们知道,ActiveX控件 ...

  2. 【c++】注册OCX控件

    几种注册OCX控件的方法. 一. 如果是自己编写的程序,可以以管理员身份打开VS,编译通过后即注册成功. 二.在 控制面板->用户帐户和家庭安全->用户帐户->更改用户帐户控制设置- ...

  3. Win7 64位系统 注册 ocx控件

    32位系统注册ocx就不谈了.网上一搜一大把.下面说下win7 64位 旗舰版下如果注册ocx控件 1.首先复制 XXXX.OCX文件到"C:\Windows\SysWOW64"目 ...

  4. 做VB的,经常注册和反注册OCX控件和DLL链

    做VB的,经常注册和反注册OCX控件和DLL链 但是,每次都要 "开始"--"运行" --"regsvr32 C:\********\******.o ...

  5. 64位操作系统注册ocx控件失败,提示:模块加载失败请确保该二进制存储在指定路径中。

    64位操作系统注册ocx控件失败,提示:模块加载失败请确保该二进制存储在指定路径中 我的解决方案: 1.找到位于windows下的syswow64文件夹下的cmd 2.并拷贝需注册的ocx文件到sys ...

  6. win10注册ocx控件的步骤(包含错误处理方法0x80040200)

    最近在测试一个加载ocx控件的C++程序,运行前要先注册ocx控件. 1.用运行命令提示符或者PowerShell. 2.利用命令进入到ocx文件所在的目录下输入注册命令 注册命令:regsvr32 ...

  7. 操作ocx控件和注册反注册ocx

    查看OCX控件的API: 通过OLE-COM Object Viewer工具查看ocx里面的函数声明.此工具一般在visual studio IDE的工具扩展中找到.也有独立小程序可以下载. DOS常 ...

  8. regsvr32 注册 ocx 时卡死,不退出

    今天在将一个 vs2010 写的 exe 工程改造为 ocx 时,前期一切顺利,也能编译通过(不过在最后生成 .ocx 时 vs 一直卡着不动,先暂且不管,通过 Build --> Cancel ...

  9. Windows7下注册OCX的注意事项

    文章首发于:博客园 今天要测试一个几年前基于.NET Framework1.1做的软件在Window7下的工作情况,发现Windows7很体贴的已经默认安装了最新版的Framework3.5.1.程序 ...

  10. Win7 注册ocx控件 “DllRegisterServer的调用失败,错误代码为0x80040200 ”

    在 win7系统下, 在运行里运行 regsvr32 *.OCX 时, 出来"* .OCX 已加载,但对DllRegisterServer的调用失败,错误代码为0x80040200" ...

最新文章

  1. ASP.NET页面借助IFrame提交表单数据所遇到的问题
  2. SQL Server高可用性部署实施 SQL server 群集
  3. 不同时重写equals和hashCode又会怎样?
  4. DirectX11 With Windows SDK--27 计算着色器:双调排序
  5. 为什么mysql与eclipse_mysql的用户名和密码都是正确的,但是eclipse启动说不对
  6. JavaFX 2.0布局窗格– HBox和VBox
  7. HTML5 API详解(14):Notification 实现桌面提醒
  8. linux中dpkg找不到命令_工作中常用的Linux命令介绍与实践
  9. 纯CSS的方法解决文字溢出与截断的问题
  10. Matlab读取图像数据并写入TXT
  11. 对于刺头,怎么办?9个套路支招
  12. 连续变量的全概率和贝叶斯公式_浅谈条件概率、全概率公式和贝叶斯公式
  13. android 备份管理器,最佳Android备份提取器和备份解决方案
  14. Android应用开发获取手机电池电量的简单方法
  15. 【交叉编译】海思平台和安霸平台交叉编译
  16. 从物联网架构分析物联网安全风险
  17. 程序员买房买车成功理财参考书
  18. 混合(Blending)
  19. LA@相似方阵和对角化
  20. 从json提取数据,保存成txt格式

热门文章

  1. python编写收入支出明细程序_python 处理微信对账单数据的实例代码
  2. Bitvise SSH Client 无法连接服务器
  3. java rxtx下载_rxtx-2.1-7r2 jav
  4. 【常用模块】电容触摸按键模块(原理讲解、STM32实例操作)
  5. 智能(个性化)推荐系统全流程落地实施方案
  6. java调用 火眼臻睛,火眼臻睛车牌识别SDK评测
  7. React 脚手架使用
  8. 电路设计基础知识(一)[转]
  9. c语言字体取模软件下载,非常好用的lcd汉字取模软件
  10. vue 富文本编辑器wangeditor 上传图片