如何在Powershell中更改Notepad ++的默认安装路径

时间:2014-05-22 19:20:23

标签: powershell install notepad++

在运行我的Powershell脚本时,我无法弄清楚将Notepad ++的默认安装路径C:\Program Files\更改为我希望它安装到的驱动器的参数。我正在尝试进行静默安装,无法手动更改它。有谁知道我可以添加哪些参数来将程序安装到E:\驱动器?下面是我的代码以及我在PowerShell中尝试的内容。我用-ArgumentList参数搞得很多,以确定我是否可以将它指向E:\驱动器但到目前为止没有运气。

function install-Notepadpp()
{
$install="*PATH*\npp.6.6.2.Installer.exe"
Start-Process -FilePath $install -ArgumentList '/InstallDirectoryPath:"E:\"','/S'  -Wait -Verb RunAs  
Write-Host “Notepad++ has been installed.” -ForegroundColor Green}

##### This is Windows calling the function to install the script
install-Notepadpp

1 个答案:

答案 0 :(得分:0)

你真的需要安装吗?你在dev网站上有独立的软件包,你可以在任何你想要的地方复制它。至于'酷'上下文菜单插件,它们很简单,可以手动添加。

以下是完成此操作需要采取的步骤的简要说明:

  • 让您的Powershell将独立包的内容复制到 想要的文件夹。

  • 使用Powershell生成新的GUID

    [GUID] :: NewGUID()

  • 将GUID记下到变量(以便稍后引用)。

  • 在HKEY_CLASSES_ROOT \ CLSID \下以同样的方式添加GUID条目 其余的GUID已添加。

  • 创建子容器 InprocServer32 设置

  • InprocServer32 中将(默认)值设置为所需 Notepad ++安装路径直接指向NppShell_06.dll(例如 C:\ Program Files \ Notepad ++ \ NppShell_06.dll)

  • 添加 ThreadingModel REG_SZ条目,并将其'值设置为公寓

  • 设置子容器中,相应地设置值 - 对于a 有效值列表,请参考带有Notepad ++的机器 安装。最“有趣”的是“路径”和“标题”

  • 将您之前生成的GUID条目添加到子容器“ANotepad ++” 在HKEY_CLASSES_ROOT * \ shellex \ ContextMenuHandlers \下(默认)

这应该这样做。虽然我没有在我的机器上测试上述内容,但我相信这将解决“手动”安装问题。作为旁注,作为开发人员的建议(或者,作为一种最好的方式,自己编写它!)来添加一些静默安装配置开关可能是值得的,这样我们就不用担心上面的“变通办法”了。 。如果您遇到一些问题,请告诉我。