- Elkha - Blue
- 매크로
- 오토핫키 커뮤니티
postmessage로 dragNdrop
-
HDrop(fnames,x=0,y=0){characterSize := A_IsUnicode ? 2 : 1fns:=RegExReplace(fnames,"\n$")fns:=RegExReplace(fns,"^\n")hDrop:=DllCall("GlobalAlloc","UInt",0x42,"UInt",20+(StrLen(fns)*characterSize)+characterSize*2)p:=DllCall("GlobalLock","UInt",hDrop)NumPut(20, p+0) ;offsetNumPut(x, p+4) ;pt.xNumPut(y, p+8) ;pt.yNumPut(0, p+12) ;fNCNumPut(A_IsUnicode ? 1 : 0, p+16) ;fWidep2:=p+20Loop,Parse,fns,`n,`r{DllCall("RtlMoveMemory","UInt",p2,"Str",A_LoopField,"UInt",StrLen(A_LoopField)*characterSize)p2+=StrLen(A_LoopField)*characterSize + characterSize}DllCall("GlobalUnlock","UInt",hDrop)Return hDrop}예제 (그림판 켜놓은 상태)fname=Green.pngPostMessage, 0x233, HDrop(fname), 0,, ahk_class MSPaintApp함수 첫번째 파라메터에 파일명 리스트를 라인피드로 구분해서 작성하면 여러 파일도 한번에 전달이 됩니다.
-
fname=test.bmp ; 이미지 파일만 test.bmp 만들어서 넣었는데 요렇게 오류가 나와요ㅠ, 이미지파일은 스크립트랑 같은폴더에 있어요
-
밑 스샷에 정답이 있네요
파일 이름을 절대경로로 입력해줘야되는데 제가 예제에 깜빡하고 작성을 안했네요 ㅎㅎfname=%A_ScriptDir%\Green.pngPostMessage, 0x233, HDrop(fname), 0,, ahk_class MSPaintApp이걸로 해보시지요 -
완벽히 작동되네요! 절대경로였군요
오핫포럼에 있는거는 원본이 일본사람이 만든걸로 유니코드도 지원안되고 고물이었는데..
혹시 천재신가요? 농담입니다 ㅋㅋ
지금 당장 필요한건 아니지만 복수개 파일을 넘길때 라인피드로 구분해서 입력하면 된다고 하셨는데. 라인피드가 /n/r말씀하시는거죠? 근데 이거 fname변수에 어떻게 입력해야되나요? 똑같이 절대경로포함해서 넣어줘야 되는거면 많이 길어 질거 같아서요. -
저도 그 포럼 봤는데 거기서 퍼온거에요. 뒷페이지로 넘기니까 누가 개선해놓은게 있더라구요
라인피드는 오토핫키에서 `n 입니다.
fnames=%A_ScriptDir%\Green.png`n%A_ScriptDir%\BALLOON2.png
이런식으로요
너무 길어질거 같으면 변수입력시에는 파일명만 입력하고
경로는 함수내에서 입력할 수 있도록 처리해주면 되죠
위 함수의 fns:=RegExReplace(fns,"^\n") 바로 아랫라인에 아래 코드를 삽입해 보세요
Loop,Parse,fns,`n,`r
{
SplitPath, A_LoopField,OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive
tmp := (!OutDrive ? A_ScriptDir "\" : "" ) A_LoopField (!OutExtension ? ".png" : "")
fns := (A_Index=1) ? tmp : fns "`n" tmp
}
절대경로인 경우는 그대로 사용
상대경로인 경우는 스크립트 경로를 앞에 추가
확장자가 없으면 .png 추가 하는 스크립트입니다 -
많이 배우네요. 프로그램짜는게 요새 왤케 재밌죠 ㅎㅎ
-
분류 | 제목 | 글쓴이 | 최근변경 | 추천 |
---|---|---|---|---|
자유 | 히트2는 오토핫키 없을까요 1 | 매매매핫키 | 2022.12.07 | 0/0 |
자유 | 히로매크로 사용중입니다. 1 | 매끄로 | 2015.03.16 | 0/0 |
자유 | 희한하네요... 2 | 보득 | 2015.02.02 | 0/0 |
자유 | 흠냐 오토핫키와 c++ 연관성 | 34f35 | 2015.10.09 | 0/0 |
자유 | 흠.. 안녕들 하세요.. 13 | 폐이니즘 | 2015.01.16 | 0/0 |
자유 | 흠 gdip 안쓰고도 비활성 이미지 서치가 가능하네요 4 | 루뽕 | 2015.11.19 | 0/0 |
질문 | 흑백화를 시킨 후 이미지를 저장 하였습니다. 이후 이... 1 | haegu | 2018.09.11 | 0/0 |
질문 | 흑백화 이미지서치 참고할만한 글 있나요?? 3 | 급홍어감별사 | 2018.07.02 | 0/0 |
질문 | 흑백 비활성 이미지 검색 구현하신 분 계세요? 4 | 프리 | 2019.05.23 | 0/0 |
자유 | 후.. 검은거 한번 만들어 볼까 합니다 | 쟈브 | 2018.11.14 | 0/0 |
질문 | 후 문의 2번째.. 드립니다......... 4 | 문의드립니다 | 2015.06.10 | 0/0 |
자유 | 효율적인 쫄작교체방법이 없을까요? 3 | 세나블텍 | 2015.08.06 | 0/0 |
질문 | 활성화된 프로세스 죽이는법 kill 3 | 리엔니케니스타 | 2017.03.29 | 0/0 |
정보 | 활성화된 창으로 esc보내는 라이브러리. 1 | 헐키 | 2015.06.19 | 0/0 |
질문 | 활성과 비활성의 차이가 무엇인가요~? 1 | 배고파3000 | 2018.09.04 | 0/0 |
질문 | 활성 ? 비활성 질문.. 2 | 아카드 | 2014.11.04 | 0/0 |
자유 | 확장자 변환기 3 | 없어돌아가 | 2015.04.01 | 0/0 |
질문 | 확장모니터에서 controlclick질문드립니다 | 레나류륜 | 2016.10.27 | 0/0 |
질문 | 확율을 결과물로 출력중입니다. 특수문자 출력을 못해요 3 | 가족오락관 | 2016.11.08 | 0/0 |
자유 | 확실히 오토핫키가... 16 | 아카드 | 2014.11.09 | 0/0 |