2017-08-05 88 views
0

我有一个批处理脚本,它正在运行下面的程序,但决定更改它,因为应用程序的窗口没有隐藏,并且在屏幕上的任何地方都闪烁。我决定使用VBScript,但我现在正努力在运行应用程序的VBScript上使用与批处理文件相同的参数来实现相同的功能。我最初使用VBScript运行没有参数的程序,它打开程序但不隐藏它。我需要两件事。VBSCRIPT不能用参数运行程序但不能隐藏

  1. 如何用参数运行程序并隐藏它。

  2. 如果循环可以用参数来实现的,以及

     :: Innitial working batch script : 
    
         FOR /L %%i IN (1,1,114) DO (
         rem ECHO %%i 
    
         "C:\Program Files (x86)\Example Heli\HFDM Converter\HFDM_CONVERTER.EXE" "C:\HFDM_converter\Arinc 717 Description\H175_STEP2+_FDCR_converter_configuration_file_v4.xml" "C:\HFDM_converter\Gilda Directory\H175_V5.1R6.0_GILDA_V2501_FDCR_converter_delivery" "C:\Program Files (x86)\Example Heli\Process_fdc" "C:\archive" %%i pcm /ae /s /hp /ss /sn 
    
        ) 
    

::VB Script to help with :: 

Dim objShell 
Set objShell=WScript.CreateObject("WScript.Shell") 


a= ""C:\Program Files (x86)\Example Heli\HFDM Converter\HFDM_CONVERTER.EXE"" 
b= ""C:\HFDM_converter\Arinc 717 Description\H175_STEP2+_FDCR_converter_configuration_file_v4.xml"" 
c= ""C:\HFDM_converter\Gilda Directory\H175_V5.1R6.0_GILDA_V2501_FDCR_converter_delivery"" 
d= ""C:\Program Files (x86)\Example Heli\Process_fdc"" 
e= ""C:\archive"" 

objShell.Run """C:\Program Files (x86)\Example Heli\HFDM Converter\HFDM_CONVERTER.EXE"" b c d e 004 pcm /ae /s /hp /ss /sn", 0, false 
+1

更改您的批处理文件使用START “”/ B “C:\ Program Files文件(x86)的... HFDM_CONVERTER.EXE” 等,您可以使用START通过键入获取信息START /?在命令提示符处。 – thx1138v2

+0

不,这不是我想要的。问题在于HFDM本身就是一个应用程序,它带有自己的控制台,并且在每个循环完成后在屏幕的另一个位置完成。现在唯一要做的就是立即将其隐藏起来,这样做是有问题的。如果有帮助,我会看看autoit。 – great77

回答

0

我已经决定去与AutoIt的。这里是代码:感谢

Local $i 
sleep(2000) 

For $i = 1 To 300 Step 1 
    sleep(100) 

    ;;; MsgBox($MB_SYSTEMMODAL, "", "Count down!" & @CRLF & $i) 
RunWait('"C:\Program Files (x86)\Examples Heli\HFDM Converter\HFDM_CONVERTER.EXE" "C:\Program Files (x86)\AIRBUS HELICOPTERS\HFDM Converter\Arinc 717 Description\H175_STEP2+_FDCR_converter_configuration_file_v4.xml" "C:\Program Files (x86)\Examples heliHFDM Converter\Gilda Directory\H175_V5.1R6.0_GILDA_V2501_FDCR_converter_delivery" "C:\Program Files\WinSCP\Unconverted" "C:\FDM\Upload" ' & $i & ' pcm /ae /s ') 

sleep(50000) ;;;; very important because if many fcd in a folder, the hfdm converter might close to move to the next fcd and you do not want to jump the loop quickly 
Next 
+1

如果您设法解决您自己的问题,请不要忘记通过点击打勾来接受您自己的答案。 :) – BoffinbraiN