【问题标题】:Web Setup Project - Getting the Current Machine NameWeb 设置项目 - 获取当前机器名称
【发布时间】:2009-05-07 04:37:14
【问题描述】:

我有一个 Web 设置项目,其中包含一个要求机器名称的自定义屏幕。反正有没有用当前机器名称预填充这个字段?

如果我需要它以仅包含“本地主机”不符合我的要求。

"Environment.MachineName" 将在代码块中返回机器名称,如果我在自定义操作中需要它,那会很好。但似乎自定义操作在您完成安装向导之后才会执行......所以我实际上无法使用它。不管怎样,让我知道你的想法。

【问题讨论】:

    标签: .net setup-project


    【解决方案1】:

    从我有限的研究来看,简单的 Web 设置项目似乎不足以让你做你想做的事。我会建议以下任何一项,具体取决于这对您的项目的重要性:

    • 只需使用默认的 LOCALHOST
    • 保留默认空白并使用对话框文本告诉用户如何检索机器名称
    • 不要询问用户,稍后使用可以访问环境变量的安装后 exe/脚本进行设置
    • 使用不同的(阅读:更强大的)安装程序

    我当然会建议最后一个,但如果您真的不需要那么糟糕的这个功能,请选择在您的情况下可以接受的其他选项之一。

    【讨论】:

    • 感谢您的回复。我最终要做的是使用 LOCALHOST 作为默认值,然后在安装程序的自定义操作中使用 System.Environment.MachineName 将 LOCALHOST 替换为实际的机器名称。这不是最理想的结果,但就像你说的那样,Web 设置项目并不是非常健壮,如果我不得不进一步追求它,我可能需要使用不同的安装程序。
    【解决方案2】:

    我不确定您在 Web 设置项目运行时是否可以访问代码。如果是这样,您可以尝试静态“Environment.MachineName”属性。

    【讨论】:

    • 但是您如何将它分配给我安装中的 msi 属性的值?这就是我卡住的地方。
    • 是的,这就是我不确定的……抱歉。 :( 我实际上在写完这个答案后就删除了它,但决定取消删除只是为了它。
    【解决方案3】:

    System.Environment.MachineName

    【讨论】:

      【解决方案4】:

      您可以访问环境变量吗?你可以评估%COMPUTERNAME%

      【讨论】:

      • 是的,我确实尝试过,但没有运气。还是谢谢
      猜你喜欢
      • 1970-01-01
      • 2018-09-23
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 1970-01-01
      • 2012-03-05
      • 2020-06-06
      • 2012-04-17
      相关资源
      最近更新 更多