草庐IT

Windows提权

全部标签

windows - Wix <MajorUpgrade> 在捆绑 VC 可再发行组件后无法正常工作

我们最近决定将VC++可再分发包与我们的应用程序捆绑在一起。不幸的是,这破坏了我们的升级。旧产品未正确卸载,并且仍然与新版本一起出现在添加/删除控制面板中。如果我理解正确,当旧安装程序的所有功能都没有卸载时会发生这种情况,这就是我尝试下面描述的两种方法的原因。如果我不捆绑VC可再发行组件,旧产品将不再显示在控制面板中。出现此行为的原因是什么?我该如何解决?常用代码版本1:附加功能版本2:在现有功能中 最佳答案 我会使用详细日志进行升级以查看发生了什么。特别是查看适用于您的升级的FindRelatedProduct事件(将有多个),看

windows - 如何使用 wix 创建虚拟帐户的示例

是否有关于如何使用WIX创建/使用自定义Windows虚拟帐户的任何公开可用的HowTos/示例?具体来说,我们希望使用仅具有所需权限的专用用户帐户来安装服务。我们不想为此帐户生成或管理密码,也不能保证所有服务器都在一个域中。虚拟账户似乎是一个很好的解决方案,但我不知道如何在Wix中创建一个,或者如何向它添加组/权限。 最佳答案 好像WIX不直接支持虚拟账户。但是,虚拟帐户是从服务中派生出来的。因此,您只需使用帐户NTService\(其中是使用该帐户的服务的名称)配置服务时。例如:之后,您可以使用此命令将其添加到所需的组中:net

windows - 获取父文件夹的相对路径

我有一个巨大的批处理文件,我将其分成几个较小的文件,一个主文件分别调用每个较小的文件。为了整洁起见,我将各个脚本放在项目文件夹的子文件夹中(主脚本在项目文件夹中)。然而,这导致了一个问题——我不知道如何更改新的单个脚本中的某些路径。布局大致如下:Project|---MasterScript.bat||---Scripts||---scriptA.bat||---Exes||---program.exe||---config.xml所以主脚本调用每个批处理脚本-A和脚本A使用参数/config调用program.exe配置.xml.问题是如何处理program.exe和config.x

windows - 测试 Windows 产品 key 是否有效

我想从一台看似旧的笔记本电脑上购买WindowsVista产品key。我想知道如何测试它是否仍然有效(因为我知道您可以注册key的计算机数量存在某些限制)。我的想法是用WindowsVista创建一个VM,断开它与Internet的连接,然后使用它上面的key。如果可行-只需删除VM。这在实践中应该起作用吗?此外,key是否可以绑定(bind)到它来自的特定笔记本电脑?提前谢谢你。 最佳答案 您需要注意OEMkey(附在Material中)。如果您的计算机上预装了Vista,或者您购买了OEM许可/下载,则它被归类为OEM许可且不可

windows - 有没有办法从 for 循环中的通配符中排除某些值/变量

for/d%%AIN(u:\mainfolder\*)DOifnotexist"%%A\%var1%"mkdir"%%A\subfolder"我想排除目录u:\mainfolder\中的某些文件夹,以便mkdir在除少数文件夹之外的所有文件夹上执行。如果使用通配符,是否有办法排除某些文件夹? 最佳答案 如果您只有2或3个要排除,您可以这样做。for/d%%AIN(u:\mainfolder\*)DOif/inot"%%A"=="u:\mainfolder\Name1ToExclude"if/inot"%%A"=="u:\mainfo

windows - 使用从命令行传递给批处理文件的变量替换字符串 *./* : with nothing,

我正在扯头发。为什么没有可用于批处理脚本的调试器?我当前批处理脚本的第一步(它必须使用这种“语言”,因为我没有可以使用的c/wscript)只是删除小时部分(最初是格式为1:10的参数,最近已更改为尝试一个小时+分钟分隔符,该分隔符与set替换部分字符串的分隔符不同),因此我也可以获得参数的微小部分。到目前为止,我已经尝试过:延迟扩展-setShutdownMinute2762=!ShutdownTime2762:*.=!各种版本的标准扩展(作为一些内存中的例子):我。设置ShutdownMinute2762=%ShutdownTime2762:*.=%二.设置ShutdownMinu

windows - 使用bat脚本删除除一个文件循环外的所有文件

我在批处理文件中有一个循环,用于删除目录中除一个文件外的所有文件(Windows7)。但它挂断了,因为它仍然向屏幕发送命令,即使我认为我已经抑制了它。这是我正在使用的命令:for%iin(*)doifnot%i==UPDATE.BATdel/s%i>nul2>&1测试了我的批处理脚本,日志显示它在这个命令处停止。在命令行测试命令,将“del/sfile.ext>nul2>&1”命令输出到目录中每个文件的提示符,这就是导致我的批处理文件挂起的原因。我需要在这里更改什么? 最佳答案 如果这是直接在打开的cmd窗口中而不是批处理,您可以使

windows - 需要帮助通过 powershell 删除默认的 Windows 10 应用程序

我正在尝试通过在powershell脚本中运行以下命令来降低Windows10教育版的体积。我可以获得脚本来删除已登录用户的应用程序,但一旦有人新登录,应用程序就会重新出现。这是我的脚本:Get-AppxPackage-AllUsers|where-object{$_.name–like“*3DBuilder*”}|Remove-AppxPackageGet-AppxPackage-AllUsers|where-object{$_.name–like“*windowsalarms*”}|Remove-AppxPackageGet-AppxPackage-AllUsers|where-o

windows - 通过本地路径访问文件或访问 UNC 共享路径在性能上是否存在差异

我有一些模板文件托管在很多地方,主要原因是每个模块都有相应的本地可访问模板。后来,我意识到这些文件是通过每个盒子的UNC共享路径使用的。我的问题是:通过本地路径而不是UNC路径访问本地文件在性能上有什么区别吗? 最佳答案 看起来开销最小。我使用以下代码运行了一些计时测试:varlocalTimes=newList();varsharedTimes=newList();varstopwatch=newStopwatch();for(inti=0;i结果如下:本地:avg=00:00:00.0567284,50k=00:47:16.42

windows - Docker for Windows - 容器域名无法解析

我想使用docker-compose在本地机器上设置开发环境。我正在尝试为我的网站分配一些预定义的域名。它必须是像app1.myapps.test这样的三级域,而不仅仅是app1。我希望Docker使用hostname和domainname这两个属性自动分配这些主机名,而不是将静态IP分配给容器并将这些IP添加到hosts手动归档。我的Docker组合文件是:version:'3'services:app1:build:.container_name:app-1domainname:myapps.testhostname:app1正在尝试打开http://app1.myapps.tes