윈 도 우 코딩에서 선택한 파일의 파일명을 추출하는 방법이 궁금합니다.
2024.03.24 20:18
이게 되게 흔해서 간단해 보이는 게 간단하게 아니였네요.
지금 하고 있는 것도 이거 찾다가 뭐지? 왜 안찾아지지? 하고 자고 일어나서 때리친 것 같네요...
이렇게 파일명을 보여주는 게 너무 흔하다보니 당연한 것인 줄 알았는데... 구현하려고 보니 방법이 모르겠네요.
레지스트리에서 command에 "%1" 붙이는 건 해당 파일 실행은 되지만 저렇게 설명 줄이 바뀌는 방법에는 안되고
~nx ~n0 ~x0 나눠서 붙이고 뭔짓을 해도 실행파일의 이름을 가져오고 선택한 파일의 이름을 가져오진 않네요.
@echo off
set "fn=%~n0"
set "extn=%~x0"
echo %fn%
echo %extn%
pause
지금 생각나는 게 있어서 그걸 해봐야겠군요; 아는 분 있으실까요?
댓글 [3]
-
왕초보 2024.03.24 20:50
-
왕초보 2024.03.24 20:55
purebasic의 경우 입니다
GetFilePart()
https://www.purebasic.com/documentation/filesystem/getfilepart.html
제가 PESettings에서 사용한 예입니다
Define WimFileName.s = GetFilePart(WimPathFull)
-
라랑 2024.03.24 21:07
어.. 이것도 해봤던 방법인데... 변수를 넣어야 해서 지나쳤었는데요
변수를 구하려고 하는데 변수를 넣으라고 해서 대충 넘어갔던 것인데...
GetCurrentDirectory 같이 쓰면 될려나요... 해봐야겠습니다. 감사합니다.
아.. OpenFileRequester로 열었을 때 사용하신 방법일까요? 공홈에서 NextSelectedFileName()를 권장해서 그거만 써본...
지금 제가 구현하는 알고리즘을 떠올리질 못해서 안되는 것일수도... 특정 사고에 갇혀있는 것 같기도 합니다.
PE 1회 부팅에서 사용했던 파일명 추출 cmd 입니다
우클릭 메뉴나 드래그에서 넘어오는 전체 파일 경로에서 파일 이름만 추출합니다
@echo off
pushd %~dp0
echo %1
echo %~nx1
pause>nul