CMD 스크립트를 사용하여 EXE 확장자없이 실행 파일을 실행하는 방법은 무엇입니까? 상황은 환경 변수를 설정 해야하는 휴대용

상황은 환경 변수를 설정 해야하는 휴대용 응용 프로그램이 있다는 것입니다. 다른 방법은 사용자 프로그램 데이터 디렉토리에서 설정을 시도합니다.

이식 가능하지 않은 모드에서 실행 파일을 실행하지 않으려면 (매개 변수없이 실행되지 않도록) 파일의 “.exe”확장명을 지 웠지만 마우스 (원하는)뿐만 아니라 start명령 을 통해서도 실행할 수 없습니다. .

exe 확장자가없는 실행 파일을 실행하는 방법이 있습니까?



답변

예 – 단순히 프로그램의 전체 파일 이름을 입력하면됩니다. ( .exe요구 사항은 GUI 쉘에만 존재합니다.)

(그것은 수있는 파일이 필요로 할 – 그래서 당신이 얻을 수없는 경우 확장 불구하고 , 실행에 이름을 변경 하거나 다시 시도하십시오.)MyProgramMyProgram.notexeMyProgram.lol


답변

확장자가 처음 2 바이트 인 파일 MZ은 EXE처럼 취급됩니다.

다음을 시도하십시오.

  1. a.txt파일을 만들고
  2. 입력하고 MZ저장하십시오.
  3. 를 열고 cmd폴더로 이동 한 다음
  4. a.txt오류 메시지를 입력 하고 확인하십시오.

교체 MZ와 함께 MS다시 시도 – 파일 실행이 시간 메모장이 열립니다.


답변

확장명이 .exe 인 파일에서 프로세스를 실행하려고했습니다. cmd.exe에서 실패하면 powershell 명령을 시도해보십시오. 여기 하나가 있습니다 :

시작 프로세스

설명서에는 기본 구문과 UseShellExecute에 대한 내용이 있습니다. 그냥 :

Start-Process -FilePath .\my-program -Wait -NoNewWindow

이 명령은 UseShellExecute 구문을 사용하고 해당 파일 형식에 연결되지 않은 응용 프로그램에 대한 오류를 반환합니다. 기본 구문을 사용하려면 UseShellExecute에없는 매개 변수를 추가했습니다.

Start-Process -FilePath .\my-program -Wait -RedirectStandardError ./error.txt -NoNewWindow

내 프로그램이 시작되어 콘솔에 출력을 썼습니다. 테스트 목적으로 만 필요했기 때문에 이것으로 충분했습니다.


답변