WMIC: how to use **process call create** with a specific working directory?

*爱你&永不变心* 提交于 2020-01-01 05:27:08

问题


The task is to launch a program using wmic process call create "c:\folder\app.exe" and have app.exe access it's own support files in the app.exe home folder tree.

The batch script below illustrates the problem with WMIC silently changing the working directory, so that the support files cannot be found.

This script creates a second batch file called one.bat that simply types a url.txt file from the same folder, to display www.google.com on the console.

When using wmic to create the process, wmic silently changes the working directory so that one.bat is not found and if I specify the full path as d:\abc\one.bat then one.bat will launch but it can't find the file to be typed called url.txt in it's own folder.

If I copy the WMIC.EXE file to the same folder, it fails in the same way.

@echo off
set "folder=d:\abc"
cd /d "%folder%"

(
echo.@echo off
echo.type url.txt
echo.pause
)>one.bat

(
echo.@echo off
echo.www.google.com
)>url.txt

echo this will work to launch the one.bat but the working directory is wrong and the file can't be found
wmic process call create "%folder%\one.bat"
pause

echo this will not launch one.bat because it can't be found
wmic process call create one.bat
pause

echo this will not launch one.bat as the working directory is changed
copy "%windir%\system32\wbem\wmic.exe" .
.\wmic process call create one.bat
pause

Does anyone know of a WMIC switch that will set the working directory for this command?


回答1:


Run

wmic process call create /?

to get the information on why this

wmic process call create "c:\folder\app.exe","c:\folder"

should work



来源:https://stackoverflow.com/questions/24658745/wmic-how-to-use-process-call-create-with-a-specific-working-directory

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!