原文:https://blog.csdn.net/ervinsas/article/details/36424127

最近几天被搞得焦头烂额,由于DCOM客户端程序是在32位系统下开发的,调试时DCOM服务端也是安装在同一台机器上,所有过程一直还算顺利。可这次项目实施的时候,采购的一台服务器只能安装2008 64位,DCOM服务端必须安装在此服务器上(DCOM服务端程序有32位和64位的,没问题),这就导致一个问题了,DCOM客户端是32位的,无法在64位系统上运行,如果要重写64位的DCOM客户端程序,由于其依赖的模块太多,修改非常繁琐,所以就想将DCOM客户端程序运行在32位操作系统上进行远程调用64位上的DCOM服务。可在调试过程中,总是报告“拒绝访问”权限不够问题。查阅了网上各种资料,各种试,还是未能成功,最终自己查看DCOM服务端的系统事件查看器日志错误信息,摸索着终于解决了,在此特作说明,网上高手的资料并非完全错误,只是都不完全而已,还是给了我很大的帮助,非常感谢大家的无私啊。。。

下面将我的方法完整的记录下来,以备参考,该方法已在2008 32 64位系统下测试通过:

一、全局条件

1、 服务端与客户端要在同一局域网内,且处于同一网段。

2、 服务端与客户端均要启用Guest账号。

3、 服务端与客户端均要用Administrator账号登陆,且登陆密码要设置为相同。

4、 关闭服务端和客户端的防火墙。

5、 通过ping命令测试服务端和客户端网络连接正常。

6、服务端和客户端都能够成功访问对方的共享文件夹。

二、服务端配置

A、DCOM配置

1、 “开始 -> 运行”,键入“dcomcnfg”命令,开启“组件服务”配置。

2、 左侧导航栏展开“组件服务 -> 计算机 -> 我的电脑”,右键单击“我的电脑”,选择“属性”菜单,弹出“我的电脑属性”配置框。如果单击“我的电脑”没有“属性”菜单,则需要在系统服务管理器中将“DistributedTransaction Coordinator”服务开启。

3、“默认属性”页面,勾选“在此计算机上启用分布式COM(E)”,“默认身份验证级别”选择“连接”,“默认模拟级别”选择“标识”。

4、“COM 安全”页面,点击“访问权限”区域里的“编辑限制”按钮,弹出“访问权限”设置框,添加“Administrators、Everyone、Guests、INTERACTIVE、ANONYMOUS LOGON”账号,允许所有账号的所有权限,点击“确定”按钮。同样点击“启动和激活权限”区域里的“编辑限制”按钮,弹出“访问权限”设置框,添加“Administrators、Everyone、Guests、INTERACTIVE、ANONYMOUS LOGON”账号,允许所有账号的所有权限,点击“确定”按钮。

5、 点击“我的电脑属性 -> 确定”,完成配置。

6、左侧导航栏“组件服务 -> 计算机 -> 我的电脑 -> DCOM 配置”,选择目标服务(此处以“EADS TETRA Connectivity Server API, Release 5.5”一项为例),邮件选择“属性”菜单,在弹出配置框的“常规”页面的“身份验证级别”选择“连接”。

7、 “位置”页面,如果“在此计算机上运行应用程序”复选框可选,则选上。

8、“安全”页面,“启动和激活权限”区域,选择“自定义”,点击“编辑”按钮,添加“Administrators、Everyone、INTERACTIVE、ANONYMOUS LOGON”账号,允许所有账号的所有权限,点击“确定”按钮。同样“访问权限”区域,选择“自定义”,点击“编辑”按钮,添加“Administrators、Everyone、ANONYMOUS LOGON”账号,允许所有账号的所有权限,点击“确定”按钮。

9、 “标识”页面,选择“交互式用户”。点击“确定”完成配置。

B、策略配置

1、“开始 -> 管理工具-> 本地安全策略”,开启“本地安全策略”配置。

2、点击左侧导航栏“本地策略 -> 审核策略”,右侧策略列表中,右键点击“审核登陆事件”选择“属性菜单”,“本地安全设置”页面,勾选“成功”、“失败”复选框,点击“确定”按钮退出。相同的方法设置“审核对象访问”和“审核特权使用”。

三、客户端配置

客户端配置就简单了,基本不用配置,只要将依赖的COM注册一下就可以了。

另:如果还是不行,那就悲哀了,只能借助服务端系统事件查看器日志,摸索解决了。。。

【转】DCOM远程调用权限设置的更多相关文章

  1. 使用WMI和性能计数器监控远程服务器权限设置

    应用场景:在web服务器中,通过.NET编码使用WMI查询远程服务器的一些硬件配置信息,使用性能计数器查询远程机器的运行时资源使用情况.在网上没有找到相关的东西,特记录与大家共享. 将web服务器和所 ...

  2. MYSQL远程登录权限设置 ,可以让Navicat远程连接服务器的数据库

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ...

  3. [转]MYSQL远程登录权限设置

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录:   1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED B ...

  4. MYSQL远程登录权限设置(转)

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ...

  5. MYSQL远程登录权限设置

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ...

  6. mysql_MYSQL远程登录权限设置

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ...

  7. (转)MYSQL远程登录权限设置

    转自:http://blog.csdn.net/zhengnz/article/details/6308773 Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql, ...

  8. Office DCOM 组件交互权限设置

    这里以 WORD 为例: 运行 mmc -32 打开控制台. 点击 文件 -> 添加/删除管理单元 ,在 可用的管理单元 中选择 组件服务 ,然后点击 添加 , 确定 . 展开 组件服务节 点直 ...

  9. mysql远程连接权限设置

    今儿有位同事提出,一套MySQL 5.6的环境,从数据库服务器本地登录,一切正常,可是若从远程服务器访问,就会报错, ERROR 1045 (28000): Access denied for use ...

随机推荐

  1. github小技巧之Creating a pull request 创建 pull 请求

    创建一个 pull 请求是为了协作更改存储库.这些变化会产生一个分支,它确保主分支保持干净整洁. 与commits提交是不同的,提交是fork之后的一种操作. 在你可以打开一个 pull 请求之前,您 ...

  2. 【NumPy学习指南】day4 多维数组的切片和索引

    ndarray支持在多维数组上的切片操作.为了方便起见,我们可以用一个省略号(...)来 表示遍历剩下的维度. (1) 举例来说,我们先用arange函数创建一个数组并改变其维度,使之变成一个三维数组 ...

  3. Linux OpenGL 实践篇-13-geometryshader

    几何着色器 几何着色器是位于图元装配和片元着色器之前的一个着色器阶段,是一个可选阶段.它的输入是一个图元的完整的顶点信息,通常来自于顶点着色器,但如果细分计算着色器启用的话,那输入则是细分计算着色器的 ...

  4. IOS7 Text View 截断的问题解决

    - (void)textViewDidChange:(UITextView *)textView { CGRect line = [textView caretRectForPosition: tex ...

  5. POI导出excel项目(webwork)实例

    后台action: public String exportExcel(){ this.setUserList(this.getUserService().findUserInfosByGroupID ...

  6. POI写入word doc 03 模板的实例

    在使用POI写word doc文件的时候我们必须要先有一个doc文件才行,因为我们在写doc文件的时候是通过HWPFDocument来写的,而HWPFDocument是要依附于一个doc文件的.所以通 ...

  7. javaEE(9)_在线支付

    一.目前主要的两种支付方案 二.支付流程 1.用户在提交订单完成选择易宝支付按钮后,会跳转到如下页面选择要支付的银行,如下所示: <!DOCTYPE HTML PUBLIC "-//W ...

  8. linux 用dd命令读写引导区文件

    分类: LINUX 备份MBR,linux下使用如下命令: # dd if=/dev/hda of=/root/linux.bin bs=512 count=1 这里注意使用if=/dev/hda备份 ...

  9. nodejs 设置安装包路径的取消和安装cnpm

    安装cnpm: $ npm install -g cnpm --registry=https://registry.npm.taobao.org 配置nodejs的npm安装包路径: npm conf ...

  10. ES6新数据类型map与set

    一.map,简单的键值对映射,具有很快的查找速度 1. 初始化map,map的键名可以使用其他数据类型,对象的属性名只能使用字符串或symbol 使用二维数组 var m = new Map([['n ...