어떻게 일괄 처리 프로그램 이 시 작 될 때 최소 화 합 니까?

일괄 처리 숨겨 진 실행 숨겨 진 일괄 처리 자체
 
@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
:: , pause set/p
××××××××
설명:이것 은 mta 의 스 크 립 트 언어 로 VBScript 를 이용 하여 windows 의 wscript.shell 이 컨트롤 을 만 들 었 습 니 다.이 컨트롤 에서 제공 하 는 run 방법 으로 배경 에서 실행 되 는 이 일괄 처리 입 니 다.mst 스 크 립 트 언어 는 html 응용 프로그램 에 해당 합 니 다.어떤 스 크 립 트 언어 를 사용 하 든윈도 우즈 시스템 에서 제공 하 는 wscript.shell 공간 을 만 들 수 있다 면 이 공간 에서 run 방법 으로 열 어도 mta 스 크 립 트 언어 에서 JavaScript 처럼 실행 할 수 있 습 니 다@echo off::일괄 처리 숨 김 실행 if"%1"="h"goto begin mshta"javascript:new ActiveXObject('wscript.shell').run('%~nx0 h',0);window.close();"&&exit:실행 할 코드:begin echo OK pause>nul mta 스 크 립 트 언어 는 html 언어 와 기본적으로 같 습 니 다.mta 스 크 립 트 언어 는 mshta 프로그램 으로 해석 되 고 html 는 브 라 우 저 로 해석 되 는(IE)html 스 크 립 트 언어 를 보면 알 수 있 습 니 다.이것 은 vbs 파일 의 그 스 크 립 트 언어 가 아 닙 니 다.vbs 스 크 립 트 파일 은 wscript 로 해석 되 었 습 니 다.mshta vbscript:createobject("플러그 인 이름")(window.close)를 사용 하 는 것 을 기억 하 십시오.여기 window.close 는 그 mshta 자체 의 방법 입 니 다.이 프로그램 을 닫 는 것 입 니 다.이 형식 으로 windows 에서 제공 하 는 플러그 인 을 만 들 면 됩 니 다.플러그 인 안의 방법 은 문 서 를 보면 스 크 립 트 언어 에 대해 잘 모 르 는 부분 을 알 수 있 습 니 다.HI 내 가 일괄 처 리 된 실행 창 을 어떻게 숨 길 수 있 는 지 알 수 있 습 니 다.이것 은 임시 파일(빈 칸 경 로 를 호 환 하 는)을 만 들 지 않 습 니 다.@echo off if"%1"="h"goto begin mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit:begin remy 아래 에 일괄 코드 를 쓰기 시 작 했 습 니 다.요약:아래 의 모든 말 을@echo off 아래 에 추가 하면 실행 을 숨 기 는 효 과 를 낼 수 있 습 니 다.(code 태그 후 실행 할 작업 을 숨 기 는 것)두 코드 의 생각 은 같 습 니 다.구현 수단 이 다 릅 니 다.자세히 살 펴 보십시오.if"%1"="h"(goto code)else(mshta vbscript:createobject^("wscript.shell"^).run^("%~fs0 h",0^)^(window.close^)&exit)if exist\#hide.vbs(del\#hide.vbs&goto code)else(echo createobject^("wscript.shell"^).run"%~fs0",0>\#hide.vbs&start\#hide.vbs&exit)이 코드 는 알림 부호 가 나 오지 않 습 니 다@echo off if"%1"=="h"goto begin mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit:begin remi 아래 에 일괄 코드 를 쓰기 시 작 했 습 니 다....마지막:if not"%1"="h"mshta vbscript:createobject("wscript.shell").run("%~sf0 h%*",0)(window.close)&exit/b shift/1 은 저 에 게 도움 이 됩 니 다@echo off if"%1"="h"goto begin start mshta vbscript:createobject("wscript.shell").run("%~nx0"h",0)(window.close)&&exit:begin:다음은 정상 적 인 일괄 처리 명령 입 니 다.pause set/p 등 대화 명령 pause 를 포함 하지 않 습 니 다.그 중에서-s-t 0 은 매개 변수 입 니 다.shutdown 은%0,-s 는%1,-t 는%2 로 유추 합 니 다.첫 번 째 줄 은 건 너 뛰 고 두 번 째 줄 을 보면 mshta 를 이용 하여 vbs 프로그램 을 만 드 는 것 을 의미 합 니 다.내용 은 createobject("wscript.shell").run(...)입 니 다.실행 중인 일괄 처리 이름 이 a.bat 이면 C:\에서%0 은 C:\a.bat,%~nx0 은 a.bat 를 대표 합 니 다.h 극 인자%1,0 은 숨겨 진 실행 을 표시 합 니 다.실행 을 두 번 눌 렀 기 때문에 첫 번 째 일괄 처리%1 이(가)비어 있 습 니 다.if 가 성립 되 지 않 으 면 다음 문장 을 실행 합 니 다.그리고 자신 을 다시 열 고 인자 h 를 전달 합 니 다.이때 if 가 성립 되 고 begin 으로 이동 하여 실행 합 니 다.이 두 줄 은 매우 고전적 이어서 일괄 처 리 를 창 없 이 실행 할 수 있다.또한 일괄 처리 프로그램 을 만들어 서 실행 할 일괄 처리 파일 을 호출 합 니 다.제 방법 은

@echo off  
start /min  1.bat 
위의 코드 를 다음 과 같이 저장 하 는 것 입 니 다. 2.bat 이후 일괄 처리 파일 을 저장 합 니 다. 1.bat,실행 하기 전에 2.bat 를 켜 면 1.bat 가 최소 화 됩 니 다.

좋은 웹페이지 즐겨찾기