[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] PowerShell设置文件关联函数遇到的问题

在国外论坛找到如下的设置文件关联的函数, 如果exe程序名中没有空格可以设置成功, 但是如果有空格, 就没有任何反应, 求路过高手支招, 提前感谢

要设置的程序文件的名字是 PowerShell Studio.exe程序所在的路径是 C:\Program Files\SAPIEN Technologies, Inc\PowerShell Studio 2022
发现这个软件的开发者好坑啊, 程序名中有空格不说, 路径中还有 , 号
  1. Function Create-Association($ext, $exe)
  2. {
  3.         $name = cmd /c "assoc $ext 2>NUL"
  4.         if ($name)
  5.         {
  6.                 # Association already exists: override it
  7.                 $name = $name.Split('=')[1]
  8.         }
  9.         else
  10.         {
  11.                 # Name doesn't exist: create it
  12.                 $name = "$($ext.Replace('.', ''))file" # ".log.1" becomes "log1file"
  13.                 cmd /c 'assoc $ext=$name'
  14.         }
  15.         cmd /c "ftype $name=`"$exe`" `"%1`""
  16. }
复制代码
用下面的批处理也不行
  1. @Echo off
  2. set "CurDir=C:\Program Files\SAPIEN Technologies, Inc\PowerShell Studio 2022"
  3. Set Ext=ps1
  4. Set "ProductName=PowerShell Studio"
  5. Set Icon=0
  6. Assoc .%Ext%=%ProductName%File
  7. REG ADD HKCR\%ProductName%File\DefaultIcon /ve /t REG_SZ /d "%CurDir%\%ProductName%.EXE,%Icon%" /f>NUL
  8. REG ADD HKCR\%ProductName%File\shell\open\command /ve /t REG_SZ /d "\"%CurDir%\%ProductName%.EXE\" "\"%%1\" /f>NUL
  9. pause
复制代码
本人所发所有贴子或代码, 诸大侠若认为有改进之处,请不吝赐教,感激不尽!

返回列表