VB.net 윈도우 wcript.shell

2020.09.10 17:25

졸리운_곰 조회 수:95

윈도우 wcript.shell

※ 윈도우 wcript.shell 

  - 윈도우를 구동하는 쉘 프로그램 ( 리눅스의 shell cript)

  - PowerShell 로 좀더 강력한 쉘 프로그램

  ex 1 ) 계산기 만들기

 ==> 메모장에 wcript shell 을 이용하여 계산기를 자동 실행 할 수 있다.

 ==> set shell = Wcript.createObject("\Script.shell")

       wshshell.Run "calc"

       et wshshell=nothing

 

 ==> 계산기.vbs 파일로 저장후 실행 시켜본다.

 



 

 

ex2) 계산기 실행후 자동 계산하기

  

set wshshell = Wscript.createObject("WScript.shell")

 

wshshell.Run "calc"

Wscript.Sleep 100

wshshell.AppActivate "Calculator"

Wscript.Sleep 100

wshshell.SendKeys "1{+}"

Wscript.Sleep 500

wshshell.SendKeys "2"

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

Wscript.Sleep 500

wshshell.SendKeys "^"

Wscript.Sleep 500

wshshell.SendKeys "*3"

Wscript.Sleep 500

wshshell.SendKeys "^"

Wscript.Sleep 500

wshshell.SendKeys "%{f4}" 'alt+f4:종료

Wscript.Sleep 500



set wshshell=nothing

 

- 마찬가지로 vbs 파일로 저장후 실행하면 결과값이 자동으로 계산되면서 마지막에 자동으로 종료된다.

 


 먼저 알아야 할것은 Wcript 객체이다. 이것은 WSH를 설치하면 제공되는 WSH 객체중에 하나이다. WSH는 Wscript개체 -> WshShell 개체 -> WshNetwork 개체 등등의 여러 객체를 제공하지만 그중에 Wshshell 개체가 바로 쉘 명령을 사용 할 수 있는 객체이다.

Wscript겍체를 사용하여 서버측의 응용프로그램을 실행하게 끔 할 할 수 있는것이다. 이 객체의 인스턴스를 생성하기 위해서 CreateObject를 사용하는것이다.

Set Wshshell = CreateObject("Wscript.shell" ) <--- 이게 바로 그것이다. 이렇게 WshSell 객체의 인스턴스를 만들었으면 이제 Wshshell 이라는 이름으로 쉘 객체의 여러 메소드를 사용할 수 있게됬다. 위의 예제에서 wshshell run "calc" 라고 했다. 이것은 윈도우의 내장 프로그램인 "계산기" 를 실행하기 위해 wshshell 객체에 Run 메소드를 사용한것이다. 즉 계산기 프로그램을 실행시키라는 명령어 이다. 이 Run 메소드를 통해서 서버측의 실행파일등을 동작 시킬 수 있다. WSH의 또하나는 편리함은 VBscript, JavaScript 등 편리한 스크립트를 그대로 사용하여 파일을 만들어 그것을 웹이아닌 로컬에서도 동작 시킬수 있다는것이다. VBscript로 코딩한것인 .vbs, JavaScript로 코딩한것은 .js 로 저장하면된다. 그러므로 vbs라는 확장자를 갖는 파일은 그안의 구문이 VBSscript 여야만 하는것이다. 그러므로 위에 예제는 VBScript 문법이다.

Wscript.Sleep 100 을 통해서 0.1 초동안 현재의 어플리케이션을 정지시키고 있다. 이 Sleep 라는 메소드는 CPU를 잠시 잠재우는 역할을 하는데, Wscipt 에서만 제공하는 메소드이다. Sendkey라는 메소드는 처음보는 메소드인데, 이 메소드는 지정한 키를 그 프로그램 에게 전달하는 기능을 한다. Wshshell.Sendkeys "1{+}" 라는것은 1이라는 키보드와 +  라는 키를 눌르는것을 의미한다.  일반 키는 그냥 써도 대지만, + - Enter 키 등의 특수키들은 그것을 인식시키게 하는 코드방법이 따로 존재한다. 대부분 {  } 로 묶어주어 사용한다.

%{f4} 는 alt + f4 를 의미한다.  이것은 프로그램의 종료 단축키이다. 그래서 이 키조합을 SendKey메서드로 사용하면 프로그램을 종료하게 되는것이다. 이처럼 Wscript 를 사용하여 vbs 파일로 저장해서 실행해보면 위에 사진처럼 자동으로 계산된 후에 자동으로 종료되는것을 확인 할 수 있을것이다. 더 자세한 문법에 대해서는 MSDN 홈페이지에 자세히 나와있다.

 

 

[출처] https://m.blog.naver.com/addong1224/120168334676

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
120 [WPF] Using Images in WPF TabControl Headers 탭컨트롤 헤더 이미지 file 졸리운_곰 2024.02.18 3
119 [Windows Apps][MFC] HTTP SPY : HTTP 스파이 file 졸리운_곰 2023.11.29 4
118 [Windows Apps][MFC] 2D LUA Based Robot Simulator : 2D LUA 기반 로봇 시뮬레이터 file 졸리운_곰 2023.11.29 4
117 [인공지능 VB.NET] Build Simple AI .NET Library - Part 2 - Machine Learning Introduction : 간단한 AI .NET 라이브러리 구축 - 2부 - 기계 학습 소개 file 졸리운_곰 2023.10.19 7
116 [인공지능 VB.NET] Build Simple AI .NET Library - Part 1 - Basics First : 간단한 AI .NET 라이브러리 구축 - 1부 - 기본 사항 우선 file 졸리운_곰 2023.10.19 3
115 [Windows Programming] [VisualStudio] Nuget 패키지소스 URL file 졸리운_곰 2023.09.14 3
114 [Windows Programming] A brief history of Windows UI platforms : Windows UI 플랫폼의 간략한 역사 file 졸리운_곰 2023.09.04 3
113 [C# Apps] Editor3D: A Windows.Forms Render Control with interactive 3D Editor in C# Editor3D: C#의 대화형 3D 편집기가 포함된 Windows.Forms 렌더 컨트롤 file 졸리운_곰 2023.09.03 9
112 [인공지능 (AI)] Logo Recognition System file 졸리운_곰 2023.06.04 5
111 [C# app] Pythonnet – .NET Core와 Python의 간단한 결합 : Pythonnet – A Simple Union of .NET Core and Python You’ll Love file 졸리운_곰 2023.03.11 4
110 [C# app] Gidon C# 플러그인 프레임워크에 Python 애플리케이션 포함 : Embedding Python Applications within Gidon C# Plugin Framework file 졸리운_곰 2023.03.07 47
109 [C# App] Gidon - Avalonia 기반 MVVM 플러그인 IoC 컨테이너 : Gidon - Avalonia based MVVM Plugin IoC Container file 졸리운_곰 2023.03.07 7
108 [VS2019] [C#] WinForm에 MySQL 연동하기 file 졸리운_곰 2022.12.25 8
107 [윈도우즈 앱 개발]CaptureManager SDK - Capturing, Recording and Streaming Video and Audio from Web-Cams file 졸리운_곰 2021.04.13 35
106 [ASP.NET] JavaScript 및 ASP.NET 개발자를 위한 Blazor 소개 file 졸리운_곰 2021.03.28 86
105 [c# asp.net core] - gRPC 서버, 클라이언트 샘플 튜토리얼 file 졸리운_곰 2021.02.10 175
104 [C#] sqlite on C# 예제로 배우는 C# 프로그래밍 file 졸리운_곰 2021.01.30 216
» 윈도우 wcript.shell 졸리운_곰 2020.09.10 95
102 WSH(WIndows Script Hosting) 정리 졸리운_곰 2020.09.10 769
101 [VisualBasic] Windows 화면 보호기/절전 모드 방지 방법 졸리운_곰 2020.09.10 352
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED