我正在构建一个 Windows 服务,它将部署在四台服务器上。我的用户想让服务从一个公共位置读取配置文件,并在 OnStart 上加载它。
我希望安装在安装服务时提示用户输入配置文件的文件路径和文件名,然后将该数据保存在 My.Settings 中。
我已经弄清楚如何在部署项目的 UI 中设置 EDITA1 和 EDITA2 变量,以便提示用户输入路径和文件名,但我不知道如何将这些值取出并放入服务的设置中.
请帮忙。
-詹妮弗
我正在构建一个 Windows 服务,它将部署在四台服务器上。我的用户想让服务从一个公共位置读取配置文件,并在 OnStart 上加载它。
我希望安装在安装服务时提示用户输入配置文件的文件路径和文件名,然后将该数据保存在 My.Settings 中。
我已经弄清楚如何在部署项目的 UI 中设置 EDITA1 和 EDITA2 变量,以便提示用户输入路径和文件名,但我不知道如何将这些值取出并放入服务的设置中.
请帮忙。
-詹妮弗
您是否尝试使用自定义操作属性窗口中的 CustomActionData 属性将其传递给自定义操作。语法是 /param=[EDITA1]
Context.Parameters 将包含一个字典,其中 1 个条目键为“param”(在我上面的示例中,这是我给它的键)。
我在传入包含空格的参数时遇到问题。指导方针说:
对于作为安装组件(ProjectInstaller 类)的自定义操作,CustomActionData 属性采用 /name=value 的格式。多个值必须用一个空格分隔:/name1=value1 /name2=value2。
如果值中有空格,则必须用引号括起来:/name="a value"。可以使用方括号语法传递 Windows Installer 属性:/name=[PROPERTYNAME]。
对于返回目录的 Windows Installer 属性(例如 [TARGETDIR]),除了括号之外,您还必须包含引号和尾部反斜杠:/name="[TARGETDIR]\"。
当我为我需要的文件路径尝试“[EDITA1]\”时。我收到“C..\Microsoft...”的“FileNotFound”错误,而我的路径没有Microsoft