64位COM(的ActiveX)服务器 [英] 64 bit COM(ActiveX) server

查看:218
本文介绍了64位COM(的ActiveX)服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的ActiveX EXE服务器被构建和登记罚款32位操作系统。我想使64位版本的EXE通过升级项目,Visual Studio 2010和不断变化的平台,X64,这显然是行不通的。

应用程序本身的作品,但我没有看到运行后,注册

  That.exe / RegServer添加
 

我会AP preciate从32迁移的ActiveX到x64任何有用的建议。

code,它是处理/ RegServer添加参数是如下:

 如果(LSTRCMPI(lpszToken,_T(RegServer添加))== 0)
  {
   _Module.UpdateRegistryFromResource(IDR_OUTDISKSARG,TRUE);
   NRET = _Module.RegisterServer(TRUE);
   布伦= FALSE;
   打破;
  }
 

32位ActiveX是unuable对我来说,因为我必须加载它在x64的.NET程序。

解决方案
  1. 在运行That.exe / RegServer添加,你做了,从管理员命令提示符?如果不是这可能是为什么它没有工作。

  2. 如果你这样做,它仍然没有工作,尝试调试它,看看它在做什么到注册表中。例如使用进程监视器,甚至是Visual Studio调试器(记住要确保调试运行你的应用程序作为管理员)。

I have activex server exe that was building and registering fine on 32bit OS. I wanted to make 64 bit version of that exe by upgrading project to Visual Studio 2010 and changing platform to X64 which apparently doesn't work.

Application itself works but I don't see it registered after running

That.exe /RegServer

I would appreciate any usable advice on migrating activex from 32 to x64.

Code that is processing /RegServer param is below:

if(lstrcmpi(lpszToken, _T("RegServer")) == 0)
  {
   _Module.UpdateRegistryFromResource(IDR_OUTDISKSARG, TRUE);
   nRet = _Module.RegisterServer(TRUE);
   bRun = false;
   break;
  }

32 bit activex is unuable for me since I have to load it in x64 .NET process.

解决方案

  1. When you run That.exe /RegServer, did you do that from an Administrator command prompt? If not that's probably why it didn't work.

  2. If you did and it still didn't work, try debugging it to see what it's doing to the registry. e.g. Use Process Monitor, or even the Visual Studio debugger (remembering to ensure the debugger runs your app as admin).

这篇关于64位COM(的ActiveX)服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆