Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.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
C# 在Windows 10内现有组的内部固定平铺_C#_Windows_Powershell_Windows 10_Startmenu - Fatal编程技术网

C# 在Windows 10内现有组的内部固定平铺

C# 在Windows 10内现有组的内部固定平铺,c#,windows,powershell,windows-10,startmenu,C#,Windows,Powershell,Windows 10,Startmenu,我正在为大量终端用户和PC机推出定制的开始菜单。由于角色的复杂性,创建和导入XML并不理想。我还没有找到任何关于在菜单组或文件夹中添加固定磁贴的资源。我正试图修改此脚本以添加到现有菜单组的内部。在哪里可以找到“插入文件夹”说明 function Pin-App { param( [string]$appname, [switch]$unpin ) try{ if ($unpin.IsPresent){ ((New-Object -Com Shell.Application).Name

我正在为大量终端用户和PC机推出定制的开始菜单。由于角色的复杂性,创建和导入XML并不理想。我还没有找到任何关于在菜单组或文件夹中添加固定磁贴的资源。我正试图修改此脚本以添加到现有菜单组的内部。在哪里可以找到“插入文件夹”说明

function Pin-App { param(
 [string]$appname,
 [switch]$unpin
 )
 try{
 if ($unpin.IsPresent){
 ((New-Object -Com Shell.Application).NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').Items() | ?{$_.Name -eq $appname}).Verbs() | ?{$_.Name.replace('&','') -match 'From "Start" UnPin|Unpin from start'} | %{$_.DoIt()}
 return "App '$appname' unpinned from taskbar"
 }else{
 ((New-Object -Com Shell.Application).NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').Items() | ?{$_.Name -eq $appname}).Verbs() | ?{$_.Name.replace('&','') -match 'To "Start" Pin|Pin to Start'} | %{$_.DoIt()}
 return "App '$appname' pinned to Start"
 }
 }catch{
 Write-Error "Error Pinning/Unpinning App! (App-Name correct?)"
 }
 }
 #Example of a pinned app
 Pin-App "Calculator" -pin
这样做有效,但只会不加区别地固定一个unpin。对于我的项目,我需要找到一种方法来锁定组或组内的文件夹。有人遇到过这种情况吗?我的高级谷歌搜索结果是空的。
此外,我知道微软并不热衷于允许这种行为来防止滥用。我对第三方开始菜单不感兴趣。我只是在寻找一个方向,为运行Windows10Pro 1703的大型托管计算机组实时添加文件夹和组结构

因此,微软凭借其无限的智慧,决定让企业、管理员和其他所有人只让最终用户决定“开始”菜单上的内容。我已经为此创建了一个解决方案,并将在操作系统当前迭代中验证后发布。它采用一种动态且受支持的机制来生成布局修改XML,并根据不同的参数(白名单、黑名单、文件夹分组等)通过GPO应用它


我希望微软的人能意识到,这使得管理员们期望的管理几乎不可能实现。这让我想切换到Mac或Linux。

Microsoft已经非常清楚地试图阻止对“开始”菜单互动程序的编程访问,并建议使用企业GPO,这样就允许组策略的所有标准筛选方法满足不同的使用情况。我知道这一点。但是,如果可以通过安装/卸载和上面的脚本添加对象,则可以将它们添加到组中。不幸的是,微软似乎在编程访问规则中忽略了企业,这导致许多人绕过了它们。那么,问题是什么呢?尽管它被弄糊涂了,但它们应该是实现这一点的一种方法。有没有一种方法可以改变我上面的内容来更改“开始”菜单?如果是这样,我将如何查找和重新创建它?如果没有官方的API,我的假设是它是一个实现细节(因此可能会随时更改,恕不另行通知)。有多种受支持的方法来设置startmenu(GPO,Import StartAyout)。我还认为,在2018年(10年前,你会这么做),对你的用户实施布局不是一个好办法,但这当然是另一个讨论。