rexdf / CommandTrayHost

A command line program monitor systray for Windows

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

能不能支持多个path?

fcying opened this issue · comments

cmd 里面有时候是设置多个exe 一起跑的. 每个都写完整路径不方便查看.
能不能支持多个path, exe就在这些path里面找?working_directory不设的话, 就按第一个path来.

类似这样:

"path": "..\\v2ray, C:\\Windows\\System32",
commented

嗯,我是有考虑另外一个这种类似的东西的,比如期初就预留了一个不可缺少的配置项addition_env_path,但是目前它没有任何实质性作用。

顺带一提关于Windows的当前目录和可执行文件搜索路径:

  1. windows上路径分割一般是用;,因为windows的文件名支持,的。当然了FastCopy我记得貌似就是用的,分割路径就是了。
  2. working_directory的中文名字叫做当前目录。 在桌面上任意找一个快捷方式右键属性,如下图所示
    image

这个目录作用其实就是在运行程序前windows会先cd到这个目录然后再运行上面的Target的意思。

差不多可以认为Target=path+cmd 然后Start in=working_directory

3)环境变量
用于dll和exe的搜索。

批处理里面一般可以这么做

set java_home=C:\Program Files\Java\jdk1.8.0_181
set path=%java_home%\bin;%path%

然而CommandTrayHost这个path,作用只是用来表示exe所在路径的。可执行文件搜索路径,也就是path环境变量,是应该放在我预留的addition_env_path中的。

一般我比较推荐的用法是下面这种,path刚好到exe所在路径,cmd可以带参数但是不带路径,工作路径按需设置。

{
    "name": "DDNS",
    "path": "C:\\Python36",
    "cmd": "python.exe ddns.py",
    "working_directory": "E:\\python-scripts",
    "addition_env_path": "",
    "use_builtin_console": false,
    "is_gui": false,
    "enabled": true,
},

当然了,又提出来,还是可以考虑一下的。留下addition_env_path作为必选,其实当初是考虑到dll的搜索路径问题。

因为现在测试, cmd 可以绝对路径和相对路径的exe混着用...所以我就以为path 是exe搜索路径这种东西了
放到addition_env_path也行....有个能用的就好.