낭만고양이님 AutoIT 소스 코드 수정 어렵네요..
2016.03.02 22:48
낭만고양이님 자료에 문제가 있어 몇 가지 코드를 살펴보고 수정하고 있는데..
역시 쉽지 않네요.
1) 1차 코드 수정
WIM 이미지 번호를 보기 좋게 하기 위해서 무조건 두 자릿 수로 표시하는 1줄 코드 때문에 WIM Index가 두 자릿 수가 넘어가면 1로 고정되는 문제가 있었는데요.
두 가지 해결책이 있었습니다.
- 00~09까지는 우측 한 자리 숫자만 읽게 하고, 10~99까지는 두 자리를 숫자를 모두 읽게 한다.
- 앞에 붙이는 0을 안 붙이게 수정.. 그러면 1~9, 10~99 이렇게 각각 표시됩니다. 좌측으로 붙어 표시되므로 보기는 좋지 않지요.
전자는 소스 코드 전반을 손봐야 하는 것 같더군요. 왜냐하면 10~99까지는 010~099식으로 표시가 되기 때문입니다. (설마 세 자릿 수로 WIM을 제작할 분은 없겠죠? 그런 상황이라면 다시 오류가 발생할 지도 모릅니다.) 이 상태에서 두 자릿 수 읽는 조건문이 제대로 수행되지 못해서 기본값인 1로 고정되기 때문에.. 이 부분 조건문과 표시 모두를 수정해야 합니다.
그래서 그냥 후자로 해결봤습니다.. 보기는 좀 안 좋지만..
일단, 잘 작동하기는 하니까요.
2) 2차 수정
근데.. 특정 WIM(특히, 자체 제작한 경우)의 경우 Index가 1~9일 때.. 뒤에 "번"이 강제로 붙어 버리더군요.. ㅡㅡ;
당연히 Imagex에서는 오류를 뿜고.. 프로그램이 종료되고 말았습니다.
1)의 해결책을 적용하다보니.. 1~9일 때 조건문을 수행하지 못하고.. 두 자릿 수 일 때의 두 개의 값을 읽는 조건을 수행하다보니 뒤에 있는 "번"을 값으로 인식하여 불러들이는 문제였습니다. 충분히 확인해야 했는데.. 저도 오늘에서야 발견했네요.. ㅠㅠ
- 조건문을 다시 수정.. 한 자릿 수일 때 조건, 두 자릿 수 일 때 조건이 각각 수행되도록 한다.
- "번"의 위치를 우측으로 더 옮겨서 기본 "번"의 위치가 비어지도록 수정한다.
역시 근본적인 해결이 힘들 것 같아 후자로 변경하여 해결을 보았습니다.
즉, 1~9는 뒤의 "번" 자리가 비어져 있기 때문에 결국 한 자리로 정상 인식합니다.
근본적인 해결책은 아니지만.. 일단 여러 이미지를 넣고 시도해 봤는데..
문제없이 동작하네요.
혹시나 AutoIT 소스 분석해서 깔끔하게 고치실 수 있는 분이 있다면 좋겠어요.
저는 임시 해결책으로 일단 돌아가게끔만 수정한 거라 한계가 있다 생각하거든요.
원작자인 낭만고양이님이 잠수중이셔서.. 따로 요청드리기도 힘들고..
참 잘 만든 AutoIT 프로그램인데.. 제대로 수정하지 못해 죄송할 따름입니다.
혹시나 제가 발견 못한 다른 문제가 발생할 수도 있으니 테스트 해주시면 좋을 거 같네요.
흔적 파일(INI)이 남기 때문에 가능하면 PE에 내장해서 1회성으로 사용하는게 좋을 것 같습니다.
댓글 [5]
-
cungice 2016.03.02 23:15
-
은주얌 2016.03.04 01:33
유용하게 사용하시면 좋겠네요.
-
비타500 2016.03.03 00:08 낭만고양이이 소스 수정 , 배포를 허락하셨나요...?
블로그에 가봐도 그런애기가 없던데... 이렇게 수정 배포가 이루어지면, 오토잇 제작자들이
개발한것을 올리려 하지 않을텐데요..
-
은주얌 2016.03.04 01:33
일단, 낭만고양이님께 원본의 문제점을 알려드렸구요. 해당 부분 수정을 요청드렸으나 어떤 이유인지 모르겠으나 블로그 운영이 2014년 이후 거의 중지된 상황입니다. (윈사모나 매니안 역시 활동을 안 하신 지 꽤 되었습니다.) 그래서.. 자력으로 어떻게 WIMSETUP에 대한 오토잇 소스를 구했구요. 저는 해당 프로그램을 잘 사용하고 있었고.. 문제점을 해결할 수 있었기에 해당 문제를 수정하여 재컴파일 하였습니다.
오토잇 소스는 아시겠지만.. 약간의 프로그래밍 언어(라고 해도 고급 언어인 C를 약간 쉽게 변형한 것)이고.. 특별히 어려운 지식을 요구하는 건 아닙니다.. 낭만고양이님께서 일단 배포는 허용하셨기 때문에 배포에는 문제가 없고.. 말씀하신 소스 수정 부분은.. 오토잇 자체 라이센스를 따라 비상업적 목적으로 재컴파일하여 올리면 문제가 없다고 판단했기에 올린 것 뿐입니다. (제가 해당 소스를 분석만 했지.. 이 소스로 뭘 만들겠다 한 것은 없습니다. 또한, 컴파일한 WIMSETUP 2.0은 1.9에서 변경된 것은 아이콘 파일 외에는 없습니다. 악성 코드나 광고 같은 쓸데없는 것은 당연히 넣지 않았고요.)
그래도 혹시나 몰라서 쪽지나 메일로 다시 문의드린 상태인데.. 답변이 전혀 없네요.
혹 변화가 있게 되면 다시 이 게시판 댓글로 말씀드리겠습니다.
마지막으로 제가 자유게시판에 수정 관련 내용을 올린 이유는.. 수정한 WIMSetup에 대한 궁금증을 가지고 계신 분에 대한 답변과 더불어 소스 코드 수정에 대해 별다른 내용이 없음을 알리기 위함입니다. 상업적 목적은 전혀 없습니다.
-
은주얌 2016.03.08 17:55
3/7일 드디어 잠수중이던 낭만고양이님께서 최종 허락 쪽지 받았습니다.
배포에 문제는 더이상 없을 듯 합니다.
은주님 수고가 많으십니다.