簡體   English   中英

在 Visual Studio 生成后事件中運行交互式批處理

[英]Run interactive batch in Visual Studio post build events

我有一個用 vb.net 編寫的程序。 構建后,我想啟動一個交互式批處理文件,遠程執行 psexec 命令。 我怎樣才能做到這一點? 這是我的后期構建活動:

call "$(ProjectDir)ExecOnGw.bat"

這是我的批處理,如果它在正常的命令提示符下運行,執行是可以的。

c:\Sysinternal\psexec.exe \\gateway "C:\Remotepath\mybatch.bat" -u mydomain\myuser -p ******
pause

這個批處理調用遠程機器上的另一個批處理,然后如果我想退出,我必須按“q”和“Enter”。 在正常的命令提示符下,它工作正常。 但是在 Visual Studio 后期構建事件中它會下降。 幫我!

我在使用 start 命令之前已經這樣做了。 我創建了一個簡單的 pause.bat 文件來演示:

    @echo off
    pause Press Any Key
    exit

如果我把它放在構建后的事件中,我會看到一個剛剛關閉的控制台。

call pause.bat

如果我改用它,我會得到第二個控制台窗口,它在關閉之前接受我的輸入。

start "My Process" /D c:\batch /WAIT pause.bat

以下是有關我們技術開發環境的信息:

  • 微軟 Visual Studio 企業版 2019

    .NET 核心 3.1

只是為了添加到@dsway 的好答案,我使用了 Visual Studio 2019 的宏,以便我可以將目錄路徑保持為相對:

開始“我的進程”/D“$(SolutionDir)Scripts”/WAIT blahblah.bat

  1. 右鍵單擊有問題的項目
  2. 將顯示一個上下文菜單
  3. 選擇屬性選項
  4. 選擇“構建事件”
  5. 單擊“編輯構建后...”
  6. 輸入我在上面發布的上述命令,並根據您的需要對其進行調整,然后再按 OK。

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM