dde服务器,CDN服务器

dde server window阻止关机

Dde Server窗口会阻止计算机关机。

1. Dde Server窗口的特性:Dde Server是一个动态数据交换服务器窗口,用于不同应用程序之间的数据交换。在某些情况下,如果Dde Server窗口正在运行或有未完成的任务,它可能会阻止计算机关机。

2.阻止关机的原因:当计算机尝试关机时,Dde Server窗口可能会因为某些未完成的进程或任务而阻止关机操作。这可能是为了保护数据或确保某些应用程序的正常运行。

3.影响计算机关机的后果:如果长时间因为Dde Server窗口的阻止而无法正常关机,可能会导致计算机性能下降、资源消耗过多或者其他程序出现问题。在某些极端情况下,如果不能正确处理未完成的任务,可能会影响到计算机的稳定性或导致系统崩溃。

4.解决方式:为了解决这个问题,可以尝试关闭所有可能正在运行的与Dde Server相关的应用程序或服务,确保没有未完成的任务,然后再尝试关机。此外,也可以查看计算机的后台进程,确认是否有其他程序干扰关机过程,并进行相应的处理。如果问题仍然存在,可能需要专业的技术支持来解决。

请注意,以上解释是基于常见的计算机操作常识和一般的软件行为。具体情况可能因操作系统和软件版本的不同而有所差异。

delphi 中dde的四个组件简单使用

一、引言

Windows支持三种基本的IPC(进程间通信)机制:动态链接库(DLL)中的共享数据段、Windows剪贴版(Clipboard)和动态数据交换DDE(Dynamic Data Exchange)。许多著名的Windows应用程序如Microsoft Word等都宣布支持DDE技术,并在程序中嵌入了DDE消息处理函数。而此类应用程序单在DDE技术上讲大多是作为一个DDE服务器形式存在的,这就允许用户通过自行编制的一些外围软件以DDE客户的身份对其进行连接,并通过向DDE服务器程序发送一些特定的宏命令来完成对服务器程序的动态控制,本文就以常用的Microsoft Word为例,讲述了在Delphi编程环境下如何编制DDE客户程序,使其动态控制Microsoft Word的一般方法。

二、 DDE的工作原理

DDE顾名思义,是提供对不同程序在运行期间实现对数据的动态交换的一种通用技术。Windows消息虽然是在不同程序窗口间传送信息的最佳手段,但一条消息只能包含两个参数(wParam和lParam),不能传送较多的信息。内存块是存放较多信息的重要手段,但不支持全局内存句柄的共享。DDE正是建立在Windows内部消息系统、全局原子和共享全局内存基础上的一种协议,用来协调Windows应用程序之间的数据交换和命令调用。

DDE协议使用三级命名:服务(service)、主题(topic)和数据项(item)来标识DDE所传递的数据单元。服务使应用程序具有了提供给其他程序的数据交换能力,一般服务就是应用程序的文件名,如Word的服务就是是Winword(可执行文件是Winword.exe);主题是对服务器有意义的信息单元,对于Word文档就是很好的主题,许多服务器都有默认的主题System,但无法知道服务器确切有那些主题,除非查阅应用程序的相关技术文档。每次DDE客户与服务程序之间的对话都是先由客户启动的,所以在每次客户启动之前,DDE服务器必须先投入运行,下面是一个典型的DDE会话流程的事务组成:

·客户程序自动会话,服务器程序响应。

·客户和服务器用下述方法交换数据:

·服务器应客户的请求向客户发送数据;

·客户主动想服务器发送数据;

·客户要求服务器在数据修改时发送数据(热数据连接);

·客户要求服务器在数据修改后发送通知(温数据连接);

·在客户的要求下,服务器执行一个命令。

·由客户或服务器中止会话。

三、设计思路

首先,在开发工具的选择上,选择了提供有现成的DDE系列组件的 Borland Delphi 5.0。既然以Microsoft Word作为要连接的服务器,在与其建立连接之前要先设定好连接的服务与主题,由于本例只要求通过本程序控制Word的一些操作动作,如打开新文件、关闭文件、插入表格等等,所以可以分别设定这两项为:"Winword"和"System",当设置好连接后就可以通过Delphi提供的DDEClientConv组件的OpenLink函数打开与这个服务的连接,剩下的工作就是向Word服务器发送宏命令,并通过组件向其发送执行宏的命令即可,用该组件的函数ExecuteMacro来实现之。

四、程序的实现

(一)加入DDE客户端组件

新建一App工程WordDDE,然后在Component Palette组件条的System属性页里选择DdeClientConv组件,并把它拖放到窗体上。修改其Name属性为DDEClient。

(二)添加同DDE服务进行交互的代码

在工程上添加一个过程RunMacro,用于打开同Word服务器的链接,并通知服务器执行由Macro标识的宏命令,让Word按用户的意图完成响应的动作。完成之后由客户方断开这次连接,完成一次会话。下面是上述过程的实现代码:

procedure TForm1.RunMacro(Macro:pChar);

var pMacro:array[0..80] of Char;

begin

DDEClient.SetLink('Winword','System');{设置连接}

DDEClient.OpenLink;{按设置打开连接}

StrPCopy(pMacro,Macro);

if Not DDEClient.ExecuteMacro(pMacro,false) then{执行宏命令}

ShowMessage('Unable to Execute Macro');

DDEClient.CloseLink;{断开连接}

end;

(三)宏命令的执行

宏(Macro)是客户程序要服务器完成的一些操作指令,对与特定的Microsoft Word而言无非是些打开文件、插入分割符、复制粘贴字符等一些字处理方面的宏命令,这些宏命令完成的功能大多在Word的菜单下都能找到与之相匹配的菜单。如"关闭文件"菜单完成的功能就可以通过宏[FileClose]来完成。可以向窗口添加一个按钮或是菜单然后在其处理函数中添加执行宏的代码如下:

procedure TForm1.N2Click(Sender: TObject);

begin

RunMacro('[FileNew]');{让Word创建一个新文件,宏[FileNew]由函数RunMacro通知Word}

end;

Word下有许多可供传送执行的宏命令,现将一些常用的宏罗列如下,以备实际编程时选用:

[FileNew]……创建新文件

[FileClose]……关闭文件

[FileSave]……保存文件

[FilePrint]……打印文件

[FileExit]……退出Word

[File1]……打开最近打开的文件,相应还有[File2]、[File3]等等

[EditCut]……剪切操作

[EditCopy]……复制操作

[EditPaste]……粘贴操作

[EditUndo]……恢复上一步

[EditRedo]……重做上一步

[EditClear]……清除操作

[EditSelectAll]……全选操作

[ViewNormal]……正常视图

[ViewPage]……页面视图

[ViewOutLine]……大纲视图

[InsertBreak]……插入分割符

[InsertIndex]……插入索引

[FormatNumber]……格式化项目符号和编号

[ToolsOptions]……工具的选项

[TableInsertTable]……插入表格

[TableInsertRow]……插入行

[TableDeleteRow]……删除行

[TableSplit]……拆分表格

[TableSelectRow]……选择行

[TableSelectColumn]……选择列

[TableSelectTable]……选择表格

[TableSort]……排序

[WindowNewWindow]……新建窗口

[Window1]……最近打开的窗口,响应还有[Window2]、[Window3]等等

[HelpIndex]……帮助的索引

[HelpAbout]……帮助的关于

小结

DDE技术向用户提供了一种更加集成的工作环境,最适合于不需要用户参与的动态数据交换。通过上述这个例子,对DDE的工作原理和编程思想有了一定的认识之后,可以用类似的方法实现同其他程序如Microsoft Execl的DDE动态交互。

ddeserverwindows是什么

指"DDEServerWindow",即动态数据交换服务器窗口。DDEServerWindow是一种在Windows操作系统中的进程,其允许不同的应用程序之间进行通信和数据共享。通过DDE机制,应用程序可以在运行时相互传递数据和命令,实现数据交换和协作。DDE是一种动态数据交换机制,需要两个Windows应用程序,其中一个作为服务器处理信息,另一个作为客户机从服务器获取信息。DDEServerWindow的出现与软件兼容性、系统组件问题或其他因素有关。

阅读剩余
THE END