DCOM 揭秘:DCOM 教程,第六步





5.00/5 (15投票s)
我们构建新服务器并将其安装到服务器机器上。
引言
欢迎来到我们 DCOM 教程的第六步。在本系列中,我将通过提供一个全面的教程和一个直观的示例,来消除 DCOM 的神秘感、头痛和困惑。好吧,不保证——但我会尽力尝试。
如果您想跟随本教程,并在过程中添加代码并使用 Visual C++ 向导,那太好了。事实上,我强烈推荐这样做,否则本教程就是电子墨水(?)的巨大浪费。不过,我在编写教程时,也完全按照教程进行,并像我说的那样开发代码和使用 Visual C++ 向导。事实上,截图就是我为每一步开发文件时的截图!要下载这些已开发的代码以与您自己的代码进行比较,只需点击每一步顶部的“下载第 n 步文件 - n KB”链接。在本教程的问答页面,还有一个所有步骤文件的存档。我仍然建议您跟随我的进度进行;这样,您就可以在编码的同时学习。如果您在学习本教程的过程中遇到任何问题,请随时
- 发送电子邮件给我:brian@harttechservices.com。
- 在此页面底部的留言板上发帖。
- 查看本教程的问答页面。
请记住,本教程中我们开发软件的步骤如下:
- 第一步:使用 ATL COM AppWizard 创建服务器 HelloServ。
- 第二步:修改 AppWizard 提供的启动文件。
- 第三步:使用 New ATL Object Wizard 向服务器添加一个简单的 COM 对象,即
HelloWorld
对象。 - 第四步:修改
IHelloWorld
接口以包含SayHello()
方法。 - 第五步:向连接点源接口
DHelloWorldEvents
添加一个事件方法OnSayHello()
。 - 第六步:构建服务器,并将其安装到服务器计算机上。
- 第七步:创建一个 MFC 客户端 HelloCli,它调用服务器并处理连接点事件接收器。
我们目前正在进行本教程的第六步,在此我们将构建服务器,并构建和注册与之配套的代理-存根 DLL。让我们开始吧。
第六步:构建服务器并将其安装到服务器计算机上
当您到达此步骤时,就该构建我们的 DCOM 服务器了,它被实现为一个 Windows NT 服务。在点击“构建”按钮之前,还有一些事情需要先做。我们首先对项目设置进行一些更改,向项目中添加一个自定义构建步骤以构建和注册我们的代理-存根 DLL,然后我们将确保更改我们正在使用的配置。完成所有这些之后,我们就可以点击“构建”按钮了。
要更改项目设置,请点击“项目”菜单,然后点击“设置”。点击“自定义构建”选项卡;如果看不到,请滚动一下。请确保在“设置适用于”下拉列表中选择 **Win32 Release MinDependency** 配置。完成此操作后,请删除“自定义构建”选项卡中所有字段中的所有内容,以便您看到的内容与下面的**图 1** 相匹配。
图 1. 在项目设置对话框中删除自定义构建步骤。
接下来,点击“后期构建步骤”选项卡。同样,在进行更改之前,请确保在“设置适用于”下拉列表中已选择 **Win32 Release MinDependency** 配置,如**图 2** 所示。
图 2. 确保已选择 **Win32 Release MinDependency**。
然后,在“后期构建描述”框中键入 _Building and registering Proxy-Stub DLL..._,然后按照下面的行键入到“后期构建命令(s)”区域,以匹配**图 3**。
start /wait nmake -f HelloServps.mk
regsvr32 HelloServps.dll
图 3. 指定后期构建步骤设置。
在开始构建之前,最后要确保的事情是确保正确的配置是活动配置。在我们的例子中,这是 **Win32 Release MinDependency** 配置。点击菜单栏上的“构建”,然后点击“设置活动配置”。这将弹出“设置活动配置”对话框,如图 **4** 所示。点击列表框中的 _HelloServ - Win32 Release MinDependency_ 条目,然后点击“确定”。
图 4. 选择 **Win32 Release MinDependency** 配置。
构建和安装服务器,以及其他后台说明
终于可以了!现在我们准备构建了。点击工具栏上的那个好用的“构建”按钮,然后观看魔术发生。当一切完成后,您应该会在项目的 _\ReleaseMinDepenedency_ 子文件夹中看到一个 HelloServ.exe 可执行文件,并且您应该还在项目主目录中看到一个 HelloServps.dll DLL。将这两个文件复制到软盘,然后将软盘放入您想用作服务器的计算机的 C:\Winnt\System32\ 目录中。确保服务器计算机运行的是 Windows NT 4.0 Workstation 或 Server,或者 Windows 2000。然后,使用“开始”菜单中的“运行”对话框,按以下顺序运行以下命令:
- HelloServ /Service
- regsvr32 HelloServps.dll
现在,我们将使用您的开发计算机(您正在跟随本教程使用的计算机)作为客户端计算机。但要继续,如果客户端计算机运行的是 Windows NT 4.0 或 Windows 2000,我们需要遵循以下步骤。
- 将 HelloServ.exe 和 HelloServps.dll 文件从软盘复制到客户端计算机的 C:\Winnt\System32\ 目录。
- 点击“开始”按钮,然后点击“运行”。
- 运行命令 _HelloServ /Service_。
- 点击“开始”按钮,然后再次点击“运行”。
- 运行命令 _regsvr32 HelloServps.dll_。
如果您的客户端计算机没有运行 Windows NT 或 Windows 2000,那么您必须遵循以下步骤:
- 确保安装了 DCOM98 扩展,可通过此处获得。
- 将 HelloServ.exe 和 HelloServps.dll 文件从软盘复制到客户端计算机的 C:\Windows\System 目录。
- 点击“开始”按钮,然后点击“运行”。
- 运行命令 _HelloServ /RegServer_。
- 点击“开始”按钮,然后再次点击“运行”。
- 运行命令 _regsvr32 HelloServps.dll_。
现在我们准备继续进行第七步。要转到第七步,请点击下面的“下一步”。如果您需要返回第五步,请点击“上一步”。如果您有疑问或问题,请尝试点击下面的“问答”跳转到一个提供帮助的页面。