是COM服务器a';服务器';?

是COM服务器a';服务器';?,com,Com,为什么COM服务器被称为“服务器” 服务器通常是运行在机器上的进程,它响应来自客户端的请求 COM“服务器”只是可由正在运行的进程调用的已编译代码文件。它们不应该被称为服务器。从技术上讲,“服务器”只是一个提供服务的程序。因此,在COM中,您有客户机和服务器。当然,今天我们认为HTTP/REST/SOA/micro服务等等,但是COM早在那之前就已经存在了,甚至在“网络”(甚至不说网络间/互联网)这样的明显概念还没有出现之前 让我们引用官方文件: COM客户机是任何代码或对象都可以获得指向COM

为什么COM服务器被称为“服务器”

服务器通常是运行在机器上的进程,它响应来自客户端的请求

COM“服务器”只是可由正在运行的进程调用的已编译代码文件。它们不应该被称为服务器。

从技术上讲,“服务器”只是一个提供服务的程序。因此,在COM中,您有客户机和服务器。当然,今天我们认为HTTP/REST/SOA/micro服务等等,但是COM早在那之前就已经存在了,甚至在“网络”(甚至不说网络间/互联网)这样的明显概念还没有出现之前

让我们引用官方文件:

COM客户机是任何代码或对象都可以获得指向COM服务器的指针 并通过调用其接口的方法来使用其服务

COM服务器是向客户端提供服务的任何对象;这些服务 是COM接口实现的形式,可由 能够获取指向上某个接口的指针的任何客户端 服务器对象

有两种主要类型的服务器,进程内进程外。 进程内服务器在动态链接库(DLL)中实现, 进程外服务器在可执行文件中实现 (EXE)。进程外服务器可以驻留在本地计算机上 或者在远程计算机上

此外,COM提供了一种机制,允许进程内服务器(DLL)在代理EXE进程中运行,以获得能够在远程计算机上运行该进程的优势。更多信息

的确,许多COM服务器是在DLL中实现的,但情况并非总是如此。著名的进程外服务器示例:Word、Excel等

另外,正如在最后一个短语中所说的,您可以(几乎总是)通过使用代理进行配置,非常轻松地将进程内服务器(即DLL)转换为进程外服务器。COM提供了一个名为“dllhost.exe”的defaut代理,您有时可以在任务管理器中看到它。例如,Windows资源管理器使用它来保护自己不受恶意进程内扩展的影响。

从技术上讲,“服务器”只是一个提供服务的程序。因此,在COM中,您有客户机和服务器。当然,今天我们认为HTTP/REST/SOA/micro服务等等,但是COM早在那之前就已经存在了,甚至在“网络”(甚至不说网络间/互联网)这样的明显概念还没有出现之前

让我们引用官方文件:

COM客户机是任何代码或对象都可以获得指向COM服务器的指针 并通过调用其接口的方法来使用其服务

COM服务器是向客户端提供服务的任何对象;这些服务 是COM接口实现的形式,可由 能够获取指向上某个接口的指针的任何客户端 服务器对象

有两种主要类型的服务器,进程内进程外。 进程内服务器在动态链接库(DLL)中实现, 进程外服务器在可执行文件中实现 (EXE)。进程外服务器可以驻留在本地计算机上 或者在远程计算机上

此外,COM提供了一种机制,允许进程内服务器(DLL)在代理EXE进程中运行,以获得能够在远程计算机上运行该进程的优势。更多信息

的确,许多COM服务器是在DLL中实现的,但情况并非总是如此。著名的进程外服务器示例:Word、Excel等


另外,正如在最后一个短语中所说的,您可以(几乎总是)通过使用代理进行配置,非常轻松地将进程内服务器(即DLL)转换为进程外服务器。COM提供了一个名为“dllhost.exe”的defaut代理,您有时可以在任务管理器中看到它。例如,Windows资源管理器使用它来保护自己不受恶意进程内扩展的影响。

在某些地方,他们称给我送食物的人为“服务器”。然而,他们没有响应请求(嗯,无论如何也不是很经常),他们应该被称为“服务员”,顺便说一句,查找什么
CLSCTX\u本地\u服务器
does@M.M这与我的观点有什么关系?COM服务器绝不是像其他服务器(如web服务器、邮件服务器等)那样等待请求的过程。我的观点是,“服务器”一词有不止一种可能的含义,在某些地方,他们称给我送食物的人为“服务器”。然而,他们没有响应请求(嗯,无论如何也不是很经常),他们应该被称为“服务员”,顺便说一句,查找什么
CLSCTX\u本地\u服务器
does@M.M这与我的观点有什么关系?COM服务器绝不是像任何其他服务器(如web服务器、邮件服务器等)那样等待请求的进程。我的观点是,“服务器”一词有不止一种可能的含义