2014-11-25 2 views
0

완벽하게 작동하는 VB Net로 작성된 콘솔 앱이 있습니다. 이제는 작업 스케줄러를 사용하여 실행하고 싶습니다. 문제는 앱에 사용자가 들어가기 전까지 콘솔 창을 계속 열어 둔 console.readline 명령이 맨 끝에 있다는 것입니다. 앱이 세션에서 실행되는지 여부를 테스트 할 수있는 방법이 있습니까?콘솔 앱/작업 스케줄러

앱이 데스크톱 콘솔에 묶여 있지 않다는 것을 알고 있다면 콘솔에 댓글을 쓰지 않고 마지막 console.readline 명령을 무시합니다.

답변

3

무인임을 나타내려면 작업에 인수를 추가해야합니다. 예를 들어 예약 된 작업에 /u을 전달하십시오. 프로그램에서 /u을 확인하여 console.readline을 건너 뛸지 결정하십시오.

enter image description here

발췌 msdn forum

Dim args() As String = Environment.GetCommandLineArgs() 

' args(0) = Full path of executing program with program name 
' args(1) = First switch in command - /u 
if args(1) = "/u" then .... 

에서 또는 당신은 당신의 Main()Public Sub Main(ByVal args() As String)의 서명을 변경하고 당신은 내가 비교적 쉽게 있었다 기대했다 Dim args() As String = Environment.GetCommandLineArgs()

+0

를 사용할 필요가 없습니다 방법은 응용 프로그램이 작업 스케줄러 또는 창 핸들에서 실행되고 있는지 확인하는 0 또는 뭔가. 그것은 훨씬 더 재미있을 것입니다 !!! – Ebassador