【问题标题】:Manually VS IDE extension installation ? (GhostDoc extension)手动安装VS IDE扩展? (GhostDoc 扩展)
【发布时间】:2014-01-25 10:58:31
【问题描述】:

这个问题的原因是我做了一个带有一些扩展的 VisualStudio 2013 的静默安装程序,我想将 GhostDoc 扩展添加到无人看管的进程中,但是 GhostDoc 不能像 VSIX 文件一样安装,它是一个 MSI 安装程序,但似乎也不能像普通的 MSI 软件包那样静默安装。

所以我试过这个:

  1. 正常安装 GhostDoc(免费版)
  2. 转到插件展开文件的目录:C:\Program Files\Microsoft Visual Studio 12.0\Common7\Ide\Extensions\XXXXX 将文件保存到其他位置以备后用。

  3. 卸载 GhostDoc

  4. 将检索到的文件再次粘贴到步骤 2 的同一目录中。

但是不工作,我不知道为什么

我想也许我应该需要做更多的事情,比如使用什么注册“X”文件?似乎 VS 或 VSIX 会为每个新的扩展安装在扩展目录上生成一个随机目录名称(即使扩展是一直都一样)。

那么我该如何处理呢? (我在VS2013)

PS:GhostDoc 专业版只支持静默安装。

【问题讨论】:

  • 也许您应该在 GhostDoc 支持论坛 community.submain.com/forums/30/ShowForum.aspx 中提问?
  • @ElektroStudios 很抱歉,GhostDoc 的免费版本不支持静默部署可能是有原因的 - 免费版本已授权给下载它的个人,并且副本只能使用由那个人。 EULA 中也有逆向工程条款...而且,是的,我代表的是制作 GhostDoc 的公司 SubMain。
  • @sergeb 我很抱歉没有阅读 EULA(我没有阅读,因为它是免费版本)但顺便说一下,静默安装程序仅适用于我重新安装 Windows 操作系统时+ VisualStudio 然后仍然是个人使用,但如果我理解尝试静默安装 ghostdoc 是非法的还是类似的?,在这种情况下,我会删除我的问题并再次抱歉,但很遗憾,一个简单的安装程序免费版不能添加功能,只能自动安装! :( PS:对不起我的英语。似乎我无法删除它,因为有 1 个答案
  • @sergeb,当您所做的只是使用提供的安装可执行文件和安装程序愉快地写入安装日志文件的正确命令时,“逆向工程”有点可疑。我理解您的担忧,并将在我的回答中加入免责声明。
  • @sergeb 请您提供有关使用SubMain.GhostDoc.Setup.exe 文件执行卸载的命令的帮助吗? (我在 Windows 安装程序上没有 GhostDoc 卸载程序),我已经尝试过但没有卸载:SubMain.GhostDoc.Setup.exe /action=uninstall /path="%CD%\SubMain.GhostDoc.Package.dll"

标签: visual-studio visual-studio-2013 visual-studio-extensions silent-installer ghostdoc


【解决方案1】:

免责声明

Ghostdoc 最终用户协议明确规定免费版本仅供个人使用,因此不支持静默安装。此限制已到位,因此您不会在不为专业版付费的情况下将 GhostDoc 分发给组织中的每个开发人员。

免费版本应由个人开发者下载并注册到他们的电子邮件。

也就是说,如果纯粹出于个人目的,您想将 GhostDoc 免费版静默安装到您的机器上您可以从第二台机器获取二进制文件,将它们放在正确的文件夹中并运行由 Gostdoc 安装程序安装的 setup 可执行文件。据我所知,这不能被视为逆向工程,如果您纯粹出于个人目的使用它,那么您并没有违反 EULA。

怎么做

从您的另一台机器复制 Ghostdoc 二进制文件,您可以在此处找到它们:

C:\Program Files (x86)\SubMain\GhostDoc\

在该文件夹中,您会找到一个SubMain.Ghostdoc.Setup.exe,它会在您每次运行它时删除一个日志文件。如果您从成功安装中打开日志文件,您可以获得此可执行文件的正确语法。

在我的机器上,日志如下所示:

C:\Program Files (x86)\SubMain\GhostDoc\SubMain.GhostDoc.Setup.exe /action=install /TARGETDIR=C:\Program Files (x86)\SubMain\GhostDoc\ /EXTDIR2010=C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\\\Extensions\\SubMain\\GhostDoc\\1.0\ /EXTDIR2011=C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\\\Extensions\\SubMain\\GhostDoc\\1.0\ /EXTDIR2012=\\Extensions\\SubMain\\GhostDoc\\1.0\ /VS2005= /VS2008= /VS2010= /VS2011=1 /VS2012= /path=C:\Program Files (x86)\SubMain\GhostDoc\SubMain.GhostDoc.Package.dll

注意如果路径包含空格,请在路径周围添加"

对于普通的 Vsix 扩展,您可以使用

(对于偶然发现这个问题并希望安装普通扩展的人)

对于普通的 Visual Studio 扩展,您可以使用:

将 Visual Studio 安装到机器后,您可以使用位于 Visual Studio 安装文件夹中的 vsixinstaller.exe 来安装扩展。

默认vsixinstaller.exe可以在这里找到:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE

使用/quiet 调用它以进行静默安装。 /?求救:

【讨论】:

  • 感谢您的帮助,但我尝试管理 Orca 和 VSIX 安装程序,问题是,就像我说的,似乎无法像普通 msi 一样安装,所以我可以无法想象这次 Orca 会如何帮助我。我的意思是 GhostScript 它是一个可执行文件,它在 TEMP 目录中提取一个 msi 包,提取的 MSI 包是完全静默的,它在目录上“安装”扩展名但不起作用,我认为我需要注册一些文件在使用 msi 之前。我还尝试将所有内容放入压缩的 vsix 文件中,但 vsixinstaller 会引发有关 vsix.manifest 文件的错误。
  • 您的回答中提到的第一步不正确,但这不是您的错误,日志文件写入的所有路径都没有双引号,需要双引号。经过简单的修改后,我将文件复制到了一个随机目录,我卸载了 ghostdoc,并尝试使用随机目录中的SubMain.GhostDoc.Setup.exe 运行命令参数,但由于找不到最后一个参数而引发错误(当然,我已经卸载了GhostDoc):/path="C:\Program Files (x86)\GhostDoc\SubMain.GhostDoc.Package.dll"我认为我误解了那一步
  • 我也尝试过(在卸载 ShotDoc 后),将文件放在与安装文件相同的目录中,以使用安装文件运行命令行参数,现在不会引发错误,但它没有安装在 VS 上,我错过了什么?
  • 这是您需要进一步调查的路径。在不违反用户协议的情况下,我无法为您提供任何帮助。
  • 如果有人有兴趣在他自己的机器上安装他自己的电子邮件注册的 GhostDoc 免费副本供个人使用,这些是我的设置命令行参数,在针对 VS2013 的自动安装步骤中:SubMain.GhostDoc.Setup.exe /action=install /TARGETDIR="%CD%" /EXTDIR2012="%PROGRAMFILES(x86)%\Microsoft Visual Studio 12.0\Common7\IDE\\\Extensions\\SubMain\\GhostDoc\\1.0\" /VS2012=1 /path="%CD%\SubMain.GhostDoc.Package.dll"
猜你喜欢
  • 2014-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-09
  • 2023-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多