Delphi数据库的三层架构的问题和解决方法

原创 2014年03月26日 16:26:03
  • 790

//----------------Delphi数据库的三层架构几个问题的说明----------------.

第一、1,在写服务器端时,delphi7环境下,运行程序会自动注册服务(有人说Delphi7版本不能自动注册,可能需要升级),在delphiXE环境下

,不会自动注册。对于不能自动注册的,在服务器单元的

initialization

TComponentFactory.Create(ComServer, TSvrs,
          Class_Svrs, ciMultiInstance, tmApartment);
     下面加入如下语句即可。
          comserver.UpdateRegistry(true);
           2,当不需要时可以在注册表里删除该注册信息,然后再DCOM配置里面也同样删除掉。

第二、注册完成后,配置DCOM(详见说明DCOM配置说明)。

第三、在客户端发布后,打开提示拒绝访问,说明你的DCOM配置不正确;
           当客户端打开提示MIDAS.DLL时,
           解决方法:1,DelphiXE可以在引用里面加入这几个单元Midas,MidasCon,MidasLib

2,把Midas.dll放到同一目录里面,一起发布。

//----------------以下是DCOM的配置说明----------------

打开<控制面板>,进入管理工具/组件服务/计算机/我的电脑
右击<我的电脑>属性,打开<我的电脑 属性>界面:

1,选择<默认属性>,在<默认身份验证级别>的下拉菜单中选择<无>;
2,选择<COM安全>,
   2_1,点击<访问权限>模块下的<编辑限制>按钮进行配置,将Administrators、ANONYMOUS     LOGON、       Everyone、Guests四个用户(组)的本地访问、远程访问均选择允许状态。
   2_2,<访问权限>模块的<编辑默认值>设置同上;
   2_3,点击<启动和激活权限>模块的<编辑限制>按钮进行配置,将Administrators、ANONYMOUS   LOGON、Everyone、Guests四个用户(组)的本地访问、远程访问、本地激活、远程激活选择允许状态。
   2_4,<启动和激活权限>模块的<编辑默认值>设置同上;

3,在<我的电脑>的子目录下选择<DCOM配置> 
   3_1,把你的组件的 身份验证级别 设为无,同时把“安全”配置Administrators、ANONYMOUS  LOGON、Everyone、Guests四个用户(组)的完全控制、读取选择允许状态;
   3_2,<标识>选择点击<交互式用户>.

资源分享地址:http://download.csdn.net/detail/lenovo455/7102359

Delphi数据库的三层架构的问题和解决方法的更多相关文章

  1. sql server 还原数据库后,删除用户,提示数据库主体在该数据库中拥有架构,无法删除解决方法

    将另一台服务器上的数据库备份文件,在现在用的这台服务器上还原之后,再创建相同的用户名,提示用户已存在 想将之前的用户先删除掉,却提示“数据库主体在该数据库中拥有架构,无法删除解决方法” 在网上找到方法 ...

  2. golang github.com/go-sql-driver/mysql 遇到的数据库,设置库设计不合理的解决方法

    golang github.com/go-sql-driver/mysql 遇到的数据库,设置库设计不合理的解决方法,查询中报了以下这个错 Scan error on column index 2: ...

  3. Oracle 18c 数据库中scott用户不存在的解决方法

    Oracle 18c 数据库中scott用户不存在的解决方法 注:该文为转载 上面标题可直接跳转 原文地址:http://www.cnblogs.com/zangdalei/p/5482732.htm ...

  4. MySQL数据库”mysql SQL Error:1146,SQLState:42S02 “解决方法

    项目在开发的时候在Mac平台下开发的,开发完了之后在LINUX环境上部署好之后,运行时MySQL数据库报错,提示为某个表不存在之类的错误信息,后来修改了MySQL的配置文件将大小写敏感去掉,问题解决. ...

  5. 基于三层架构下的公共数据访问方法(Sqlite数据库)

    作者总结了一下,使用Winform的三层架构做窗体应用程序,在数据访问方面,有用到纯sql语句方法.参数方法.存储过程方法. 那么什么是三层架构呢? UI---存放Form窗体---(用户所关心的) ...

  6. Delphi XE8中开发DataSnap程序常见问题和解决方法 (二)想对DBExpress的TSQLDataSet写对数据库操作的SQL语句出错了!

    当我们搞定DataSnap后,我们进入客户端程序开发阶段了,我们建立了客户端模块后,打算按照刚才开发服务器的步骤开发客户端程序,随后加入了DBExpress的TSQLDataSet,设定数据库连接后, ...

  7. Oracle数据库中scott用户不存在的解决方法

    SCOTT用户是我们学习Oracle过程中一个非常重要的实验对象,在我们建立数据库的时候,如果是选择定制模式的话,SCOTT用户是不会默认出现的,不过我们可以通过使用几个简单命令来使这个用户出现.以下 ...

  8. 问题-[Delphi]提示Can't load package:dclite70.bpl解决方法

    问题现象:提示Can't load package:dclite70.bpl 问题原因:全是Window2003的Data Execution Prevention(DEF数据执行保护)造成的. 解决 ...

  9. [svn] 数据库操作残留,无法进行操作的解决方法

    WINDOWS环境下的解决方法: 1: 下载sqlite3数据库工具,放置于SVN的同级目录 2: CMD路径转移到Sqlite3目录 3: 残留操作选择: sqlite3 .svn/wc.db &q ...

随机推荐

  1. 20179223《Linux内核原理与分析》第十二周学习笔记

    Return-to-libc 攻击实验 一.实验描述 缓冲区溢出的常用攻击方法是用 shellcode 的地址来覆盖漏洞程序的返回地址,使得漏洞程序去执行存放在栈中 shellcode.为了阻止这种类 ...

  2. FastJson的一些使用

    前言 最近经常使用json的一些转换,使用的是fastjson,所以就对fastjson进行了一些汇总,记录下来. 正文 主要的api 首先是一些类库的说明: SerializeWriter:相当于S ...

  3. WPF 跨应用程序域的 UI(Cross AppDomain UI)

    为自己写的程序添加插件真的是一个相当常见的功能,然而如果只是简单加载程序集然后去执行程序集中的代码,会让宿主应用程序暴露在非常危险的境地!因为只要插件能够运行任何一行代码,就能将宿主应用程序修改得天翻 ...

  4. SmartSql 动态仓储

    动态代理仓储 SmartSql源码:https://github.com/Ahoo-Wang/SmartSql 简介 动态代理仓储(SmartSql.DyRepository)组件是SmartSql非 ...

  5. 《DSP using MATLAB》示例Example 8.26

    代码: %% ------------------------------------------------------------------------ %% Output Info about ...

  6. Sublime Text 3常用插件安装

    Sublime Text 3常用插件安装 PS:sublime是笔者用过的最好用的编辑器,也是最轻量级,功能最强大的编辑器.好东西应该被分享! 1.直接安装 --下载安装包解压缩到Packages目录 ...

  7. java 线程池--ExecutorService

    一 Java通过Executors提供四种线程池,分别为: newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程. new ...

  8. 在 CentOS 7.2 上安装 ODOO 10 (2018-10-09 持续更新)

    在 CentOS 7.2 上安装 ODOO 10 更新系统 yum update 安装 EPEL 源 1 yum install -y epel-release 安装依赖组件 yum install ...

  9. 洛谷3354(IOI2005)河流——“承诺”

    题目:https://www.luogu.org/problemnew/show/P3354 虽说是几个月前曾经讲过的题,但没有题解而自己(花了两个多小时)A了好高兴!!! 这是一个很好的套路:“承诺 ...

  10. 基于Oracle的EntityFramework的WEBAPI2的实现(二)——使用DbFirst

    之所以使用DbFirst而没有使用CodeFirst是因为考虑到现实的情况中,我们之所以会选择oracle而不是SQL SERVER,一方面是因为之前公司已经在使用Oracle,而且有好多我们需要用到 ...