作者caron0225 (淯仔)
看板MATLAB
标题[讨论] exe档自身路径位置
时间Sat Jan 30 14:49:44 2021
大家好
小弟想请教
一个封包好的matlab exe档,假设放在B路径
我在别的A路径下想用cmd的方式呼叫该exe档
我在exe里面有加入disp(pwd)语句
可以看到cmd上面执行exe档时,exe档里的disp表示当前所在A路径
如何让exe档知道自己本身的exe位置是在B路径
感谢大家~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.37.1.97 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1611989386.A.5F4.html
1F:推 profyang: 那我问你 你怎麽去Call B路径? 一定是你外面cmd那边就知 01/30 23:05
2F:→ profyang: 道B路径吧 那你就可以从外面传进去阿 01/30 23:05
3F:→ caron0225: 我知道可以用引数的方式传路径进去,但是我希望能避免 01/30 23:51
4F:→ caron0225: 这种方式 01/30 23:51
5F:→ caron0225: 不知道是否有类似python sys.argv功能的指令 01/30 23:52
6F:推 profyang: 那你试试这招: [status, result] = system('set PATH'); 01/31 15:22
7F:→ profyang: executableFolder = 01/31 15:23
8F:→ profyang: char(regexpi(result, 'Path=(.*?);', 'tokens', 'once' 01/31 15:23
9F:→ profyang: )); 01/31 15:23
10F:→ profyang: 似乎在执行matlab compile出来的exe时,它会自动把exe的 01/31 15:24
11F:→ profyang: 路径加到系统变数PATH的最前面 01/31 15:24
12F:→ caron0225: 感谢profyang大大!!这方式很有用,可以处理我遇到的问 02/01 11:52
13F:→ caron0225: 题!!只是好奇这个Path是被加在哪里??我再环境变数没看 02/01 11:53
14F:→ caron0225: 到~在matlab command window 的set path 也没看到 02/01 11:54
15F:推 profyang: 这个Path就是环境变数没错 相当於你在cmd打set Path 02/01 19:29
16F:→ profyang: 只是Matlab compile的exe在执行时会多加路径上去 02/01 19:29