文章目录
- 1.关于 Adobe InDesign Server
- 2.脚本运行
- 3.IDS和ID
- 4.windows服务
- 4.1.安装ids
- 4.2.注册服务
- 5.运行 InDesign Server
- 5.1.参数配置
- 5.2.运行实例
- 6.总结
1.关于 Adobe InDesign Server
系统集成商和解决方案开发人员使用 InDesign Server 来构建基于服务器的发布解决方案。您可以将 InDesign Server 视为没有用户界面的 InDesign 版本。它建立在与桌面版 InDesign 相同的代码库之上,但适合服务器使用。这些调整包括对多个实例的支持、错误捕获和日志记录,以及通过 SOAP 进行通信。
与桌面版一样,InDesign Server 提供了丰富的开发环境。它支持 XML 等开放标准,并且具有高度的可编写脚本性和可扩展性。可以使用 InDesign 增效工具 SDK 和 InDesign Server 脚本 SDK 中提供的 API 来扩展 InDesign Server。这些 API 可用于创建 C++ 插件、JavaScript 脚本、AppleScript 脚本和 VBScript 脚本。
2.脚本运行
InDesign Server 提供了一种 SOAP 方法 RunScript,用于将脚本发送到 InDesign Server。InDesign Server 的安装提供了一个简单的 SOAP 客户端 SampleClient,您可以使用它来运行脚本。请参阅使用 sampleclient 运行 InDesign Server 脚本。
SampleClient 是使用 C++ 编写的,其源代码在 InDesign Server SDK 中提供。InDesign Server SDK 包含以多种语言编写的其他示例客户端项目,包括 C#、PHP、VB.NET 和 Flex。
【注意】其中有c++编写的soap范例。
3.IDS和ID
InDesign Server 是用 C++ 编写的,支持使用 InDesign C++ API 开发的 C++ 增效工具。有关详细信息,请参阅《Adobe InDesign 增效工具编程指南》中的“通过增效工具与 InDesign Server 交互”和《Adobe InDesign 增效工具开发入门》中的“InDesign Server 增效工具技术”,这两者都是 InDesign 增效工具 SDK 的一部分。
4.windows服务
4.1.安装ids

4.2.注册服务
以管理员身份启动控制台,并定位到安装程序文件夹,作者目录如下:
C:\Program Files\Adobe\Adobe InDesign Server 2020
然后输入安装命令:
#安装
InDesignServerService /install
#卸载
InDesignServerService /install /u

InDesign Server Windows 服务的第二个组件是 InDesign Server 服务管理控制台管理单元。如果使用 InDesign Server 安装程序安装服务,则此时也会安装该管理单元。如果使用命令行安装服务,则还需要安装管理单元,如此处所述。
#注册
regsvr32 InDesignServerMMC64.dll#卸载
regsvr32 InDesignServerMMC64.dll /u
5.运行 InDesign Server
5.1.参数配置
您可以从命令行或其他程序或脚本启动 InDesign Server。每种方法都允许使用命令行参数,这些参数控制 InDesign Server 的运行和配置方式。
InDesignServer [参数]
-adminport number
自选。打开服务器管理任务的指定端口。
-configuration name
自选。指定此 InDesign Server 实例的配置名称。name 必须是当前系统中的有效文件夹名称,因为 InDesign Server 使用它来创建存储私有数据、缓存和配置文件的配置文件夹。默认情况下,文件夹名称为“configuration_noport”或“configuration_n”,其中“n”是端口号(如果指定了 -port 参数)。配置文件夹创建于:
- 在 Windows 上: C:\Users\<用户名>\AppData\Roaming\Adobe\InDesign Server\<版本>\<locale>\
- 在 Windows 上的 Windows 服务下: C:\ProgramData\Adobe\InDesign Server\<版本>\<locale>\
- 在 Mac OS 上: /用户/<用户名>/资源库/Preferences/Adobe InDesign Server/<version>/<locale>/
-[no]console
自选。仅限 Windows。这将创建一个新的控制台窗口(命令 shell),并将 stderr 和 stdout 重定向到那里。如果指定了 -noconsole,则 stdout 和 stderr 将通过管道传递到启动 InDesign Server 的终端(或窗口)。使用 Microsoft Visual Studio 调试器调试正在开发的 InDesign Server 增效工具时,此参数非常有用,因为默认情况下,调试器会丢弃写入 stderr 和 stdout 的数据。当从另一个应用程序(如应用程序服务器)中启动 InDesign Server 时,这也可能很有用。此参数只能用于 InDesignServer.exe,而不能用于 InDesignServer.com。默认值为 -noconsole。
-[no]errorlist
自选。控制 InDesign Server 是否应将 SOAP 调用的脚本错误存储在内存中。错误列表不会自动清除;如果累积的错误数超过允许的数,则会丢失新错误。默认值为 -noerrorlist。
-heartbeatupdateinterval number
自选。使用管理应用程序更新 InDesign Server 的最后活动时间的时间间隔(以秒为单位)。
-help
自选。显示所有参数的简短说明。
-host name
自选。运行 InDesignServer 的计算机的名称。符号地址(例如 host.corp.com)或 IPv4 地址(例如 123.345.678.90)。
-iorfile filepath
告知 InDesign Server 将包含应用程序对象的 IOR 的文件写入何处。客户端使用此文件中的 IOR 创建对 InDesign Server 应用程序对象的引用。您可以将其视为客户端代码用于访问 InDesign Server 应用程序对象的 Cookie。每个服务器实例都需要一个唯一的 IOR 文件。多个客户端使用给定服务器的 IOR 文件访问该服务器。如果 InDesign Server 输出以下通知,您将知道 IOR 已写入指定文件:“[server] 正在将 IOR 写入…”
-LogToApplicationEventLog
自选。在 Windows 上,这会将 InDesign Server 的控制台输出路由到 Windows 的应用程序事件日志。可以在标准应用程序事件查看器计算机管理控制面板中查看输出。在 Macintosh 上,当 InDesign Server 用作启动的守护程序时,应使用此参数。若要查看输出,请使用标准的 Mac OS 控制台应用程序。
-maxerrors number
自选。该数字指定 InDesign Server 应存储在内存中的 SOAP 调用脚本错误的最大数量。默认值为 10,000。
-maxwaitss number
自选。该数字指定客户端愿意等待会话开始的时间(以秒为单位)。与 -noblockss 一起使用时提供非阻塞会话支持。默认等待时间为 3 秒。
-noblockss
自选。指定 BeginSession 请求在本质上是非阻塞的。如果未提供此功能,则客户端将被阻止,直到服务器在线程池中具有空闲工作线程,从而可以开始客户端的新会话。与 -maxwaitss 一起使用时提供非阻塞会话支持。
-onmainthread
自选。仅在主线程上执行所有传入的客户端请求。
-pluginpath path[,path]
指示服务器加载指定文件夹及其子文件夹中的所有插件。通过指定已安装的 server/corba 子目录,将加载并启用 InDesign Server Corba Support 增效工具。path 是基于 InDesign Server 安装文件夹的相对路径(例如,传入“Server/Corba”指定文件夹“C:\Program Files\Adobe\Adobe InDesign CC Server 2019\Server\Corba”)。不要使用绝对路径。如果 InDesign Server 输出以下通知,您将知道 Corba Support 增效工具已加载:“[server] ApplicationIOR: …”
-port number
必填。这是 InDesign Server 将用于处理来自客户端应用程序的 SOAP 请求的套接字的端口号。如果未指定,则不使用任何端口,并且无法处理 SOAP 请求。启用 SOAP 时,在同一系统上运行的每个 InDesign Server 实例都必须具有唯一的端口。端口号必须为正整数值。
-[no]previews
自选。指定导入图像时是否生成预览。默认值为 -nopreviews。
-rxidletimeout number
自选。设置空闲超时(以秒为单位),超过此时间后将断开客户端连接。
-[no]seh
自选。仅限 Windows。指定是否应使用结构化异常处理。默认值为 -seh。
-[no]sendcrashlogs
自动将崩溃日志发送到 Adobe。默认值为 -nosendcrashlogs。
5.2.运行实例
#(65001代表utf-8编码)
chcp 65001
InDesignServer -port 18383
如下图所示:

如上图所示,中文乱码。
修改控制台编码规则
#(65001代表utf-8编码)
chcp 65001
#(936 代表GBK)
chcp 936
修改之后,如下图所示:

6.总结
至此,就可以采用SOAP的形式调用IDS服务器。