Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用DSC无人参与安装.net framework 4.6.2_.net_Powershell_Dsc - Fatal编程技术网

使用DSC无人参与安装.net framework 4.6.2

使用DSC无人参与安装.net framework 4.6.2,.net,powershell,dsc,.net,Powershell,Dsc,我正在尝试以自动化的方式在许多服务器上安装4.6.2(没有实现WSUS或其他)。我的目标是在以这种方式配置其他方面时利用PowerShell DSC 但是,我尝试的资源(xWindowsUpdate中的xHotfix和xPSDesiredStateConfiguration中的xPackage)失败了。xHotfix说下载的文件无效(来自),并且本机软件包和xPackage资源需要ProductId…而ProductId似乎也不可用 是否有人通过PowerShell DSC成功部署了4.6.2,

我正在尝试以自动化的方式在许多服务器上安装4.6.2(没有实现WSUS或其他)。我的目标是在以这种方式配置其他方面时利用PowerShell DSC

但是,我尝试的资源(xWindowsUpdate中的xHotfix和xPSDesiredStateConfiguration中的xPackage)失败了。xHotfix说下载的文件无效(来自),并且本机软件包和xPackage资源需要ProductId…而ProductId似乎也不可用


是否有人通过PowerShell DSC成功部署了4.6.2,它可以提供一些指针?

一般来说,我发现最好的回退方法就是使用脚本资源进行安装。创建一个检查.NET版本的检查脚本,然后创建一个脚本,如果尚未安装到4.6.2版本,则继续安装。我使用相同的方法部署基于.exe的应用程序安装程序。

借用另一个SO问题()我选择开发一个自定义资源来处理这个问题,因为我不喜欢脚本资源,因为它们感觉脆弱


这两个选项(使用脚本或使用脚本资源)也可以使用。我只是选择了开发一个定制资源来进行更多的控制。

巧克力是一种选择,其他一切都失败了:我也想到了巧克力;问题是,我不能(现在)确认服务器是否可以访问internet,否则我会使用它。如果您事先知道要安装的软件包,这是一个解决方法。您可以将安装程序从本地共享复制到Chocolate缓存文件夹,然后choco将使用缓存中的安装程序。@JamesC。谢谢,这也很好知道,虽然听起来有点牵扯其中,请纠正我如果我错了,我必须有另一个资源将所需的包复制到巧克力缓存,然后调用chocoloatey?或者设置一个巧克力代理服务器或类似的东西…对吗?是我还是其他人认为这很丑陋和/或愚蠢?4.6.2(以及之前的其他版本)作为Windows更新发布。然而,它们并不是以这种方式打包的,因为您不能使用WUSA.exe来安装它们……然而,如果您运行
get hotfix
,它们将显示在列表中,并且也出现在“添加/删除程序”中的“已安装更新”下。。。由于.Net Core是未来的发展趋势,因此这里可能会出现问题,但是…如果您愿意投入时间/精力来创建自定义资源,那么这肯定是更好的方法。我会将此标记为答案,直到听到更好的消息…更愿意使用windows update应用更新,但看起来不可能…@HBoyce-只是想知道你有没有找到一个更直接的方法来让它发挥作用?我惊讶地发现,用DSC安装.NET并非易事:(@RobDavis不是真的……我最近不需要做太多这方面的工作,所以没有花太多时间在自定义资源之外开发解决方案——这解决了问题。仍然可以接受其他建议。@RobDavis现在,不,该模块没有开源(并不意味着它不能就是没有)。我确实查看了引用的模块,可以告诉您它的质量要高得多-至少通过内存和简要分析。如中所述,我不相信我能处理卸载场景,当然也没有广泛的退出代码分析。我可以调查模块的开源,但到目前为止,grani似乎最了解:-)