社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 545阅读
  • 1回复

[分享]DllRegisterServer调用失败怎么办

楼层直达
z3960 
级别: FLY版主
发帖
788478
飞翔币
211655
威望
215717
飞扬币
2627867
信誉值
8



  这种提示一般都是因为我们的权限不够造成的。
  我的操作系统是win8 64位的,所有我就用我的系统和大家分享一下。
  按键盘上的win+x键调出常用命令。

  我们要选择“命令提示符(管理员)“

  然后在”命令提示符“中输入”regsvr32 c:WindowsSysWOW64comdlg32.ocx“

  输入完按回车键确定。稍等片刻,他会有成功提示。这样就表示我们注册成功了。

  因为我的系统是64位的。所以安装和注册的位置都是在”c:WindowsSysWOW64comdlg32.ocx“如果你是32位的系统那么安装和注册的位置就在c:Windowssystem32 里面
  同样的方法在命令提示符(管理员)中也是需要注册的。只是输入的命令不同。需要输入“regsvr32 c:Windowssystem32comdlg32.ocx”或者“regsvr32 COMDLG32.OCX”
关键词: 系统
 
我不喜欢说话却每天说最多的话,我不喜欢笑却总笑个不停,身边的每个人都说我的生活好快乐,于是我也就认为自己真的快乐。可是为什么我会在一大群朋友中突然地就沉默,为什么在人群中看到个相似的背影就难过,看见秋天树木疯狂地掉叶子我就忘记了说话,看见天色渐晚路上暖黄色的灯火就忘记了自己原来的方向。
z3960 
级别: FLY版主
发帖
788478
飞翔币
211655
威望
215717
飞扬币
2627867
信誉值
8

只看该作者 1 发表于: 2015-02-04
Wireshark 是最富盛名的开源抓包工具了,在电信网管开发的日常工作中是不可或缺的,经常需要抓包分析。那有没有办法可以在抓到的包中直接显示 snmp mib 的名字,而不是 OID 呢?办法当然是有的,也很简单,在官方的文档里面就有说明了。这里讲下实际配置步骤:

  1. 把 mib 文件放到 “C:\Program Files\Wireshark\snmp\mibs” 目录下。

  2. 打开 “%APPDATA%\Wireshark\smi_modules” 文件,在里面按原有的格式,添加mib名字。

  3. 修改 Wireshark 的配置,选中 “Enable OID resolution”,”Suppress SMI errors”(如下图)。修改之后关闭再重新打开 Wireshark 就生效了。


  注意事项:

  1. 如果看到的配置界面跟上面的不一样的话,是 Wireshark 版本太低了,升级到最新的版本即可。

  2. 不是所有的 mib 文件都能被正确的解析,这是一个已知问题,因为其用的开源的 mib 解析模块 libsmi 有问题。如果发现加了某几个 mib 之后 Wireshark 就启动不了了,那就还是把改动回退吧。

  参考阅读:1,2,3。

  另外,因为要求 mib 文件的名字必须是 mib 模块的名字,但是存在文件名和模块名不一致的情况,写了个 groovy 脚本,对指定目录下的 mib 文件进行重命名:

  import java.util.regex.*

  def dir = new File('''C:\Program Files\Wireshark\snmp\mibs''')

  def pattern = ~/(?ms).*^\s*([\w\-]+)\s*DEFINITIONS ::= BEGIN\s*$.*/

  dir.eachFileRecurse{ f ->

  if ( f.file && f.name.endsWith(".mib") ) {

  Matcher m = pattern.matcher( f.getText() );

  if (m.matches()) {

  f.renameTo( f.parentFile.path + "\\" + m[0][1] )

  println '"' + m[0][1] + '"'

  }

  }



  }

我不喜欢说话却每天说最多的话,我不喜欢笑却总笑个不停,身边的每个人都说我的生活好快乐,于是我也就认为自己真的快乐。可是为什么我会在一大群朋友中突然地就沉默,为什么在人群中看到个相似的背影就难过,看见秋天树木疯狂地掉叶子我就忘记了说话,看见天色渐晚路上暖黄色的灯火就忘记了自己原来的方向。