본문 바로가기

쓰기

대화 인물 : Hide_D, Rynie, G2m, 프시쵸

대화 주제 : 0.3 [ActiveX, ATS]

Hide_D 본인이 직접 뜯어본것이 아니므로 사실과 다를 수 있습니다.

Hide_D: 아 0.3 자체는 괜찮아요
Hide_D: 다만...
G2m: ㅇㅇ
Hide_D: 1. ActiveX
Hide_D: 2. ATS
Hide_D: 이 두놈이 0.3의 발목을 제대로 잡네요
G2m: 액티브...X?
Hide_D: ㅇㅇ
G2m: ATS야
G2m: 일찌감찌 들어서
프시쵸: 내부 액티브 엑스 컴포넌트군요
G2m: 알고있었는데
G2m: ...
Hide_D: 이번 아랄트랜스는
Hide_D: 컨테이너가 ActiveX
Hide_D: 아니
Hide_D: 뭐랄까
Hide_D: 이걸..
Hide_D: 음 -_-;;;
G2m: ...?;;
Hide_D: 그러니까
Hide_D: 0.2
Hide_D: 아
Hide_D: 컨테이너라고 표현하면 안되겠군
Hide_D: 0.2에서는
Hide_D: 인젝터 -> 컨테이너
Hide_D: 의 구조였죠?
G2m: ㅇㅇ
Hide_D: AralTrans.exe -> ATCTNR.dll
Hide_D: 근데 이번엔
Hide_D: 서버 -> 컨테이너
Hide_D: 의 구조요 ㅇㅇ
Hide_D: 근데 이게 더 자세히 치자면
Hide_D: (인터페이스 -> 서버) -> 컨테이너
Hide_D: 의 구조로 되어있고
G2m: ㅇㅇ
Hide_D: 이 내부 처리를
Hide_D: MS HTML + ActiveX
평군: 우옹...
Hide_D: 구성하고 있습니다.
Hide_D: 인터페이스가 JScript로 짜여져 있고
Hide_D: JScript가
Hide_D: 실제 서버로
G2m: ㄷㄷㄷㄷ;
Hide_D: ActiveX로 짜여진 코드를 불러오는거죠
G2m: ;
Hide_D: 뭐 아시겠지만
Hide_D: ActiveX의 동작이
Hide_D: XP,Vista,7
Hide_D: 셋 다 다르구요
G2m: 굳
Hide_D: 이쪽 ActiveX가
G2m: 어쩌다
Hide_D: 악성 프로그램에
G2m: 그런 구조가 되었죠[...]
Hide_D: 1순위로 공격받는 루트라
Hide_D: 아마 스킨화의 필요성을 느꼈기 때문이 아닐까 싶은데요
G2m: ...
평군: 그렇군요...
프시쵸: 확실히 액티브엑스는
프시쵸: 보안성엔 쥐약이죠
Hide_D: 그러니까
Hide_D: 기본 서버 프레임
Hide_D: 로드 자체가 꼬이는 경우가 상당수
Hide_D: 사실 저게 꼬일 시점쯤 되면
Hide_D: 0.2도 진짜 간당간당 돌아간단 이야기이기도 한데
Hide_D: 그래도 0.2에선
Hide_D: 걍
Hide_D: Injector -> Container에
Hide_D: 단순 바로가기 인자 전달이라
Hide_D: 그런쪽엔 문제가 없거든요
G2m: ㅇㅇ
Hide_D: 일단 이게 심각합니다 ㅇㅇ
G2m: ㅇㅇ
G2m: ...
G2m: 0.3이
Hide_D: 게다가 XP에서 JScript는
G2m: 쉽게 죽는다고 생각했는데
G2m: 그거였군욤
G2m: ...
Hide_D: 생각보다 신통치 않거든요 -_-;
G2m: ㅈㅈ
프시쵸: 하는 일이 제한적이죠
Hide_D: 자바스크립트를
Hide_D: JScript로 통해서 돌리는건 다들 아실거고
Hide_D: 이 JScript의 성능이
Hide_D: 죽여줍니다 -_-+++++++
평군: ;;;
G2m: [;.........]
Hide_D: 절대로 못믿어요
Hide_D: 하기야 저게 제대로 돌아갔으면
Hide_D: 그 당시의 프로그램이
Hide_D: JScript를 썼지
G2m: ㅇㅇ
Hide_D: ActiveX를 썼겠어 -_-;
G2m: ㅈㅈㅈ
프시쵸: ㅈㅈ
Hide_D: XP가 남아있는 이상
Hide_D: JScript로 기반한
Hide_D: 각종 프로그램은
Hide_D: '똥'이 됩니다.
G2m: 안타까운듯
G2m: 아랄씨
G2m: 뭔가 위험한듯
Hide_D: 저건 아랄 자체를 해결한다고
Hide_D: 해결되는 문제가 아니라...
G2m: ㅇㅇ
Hide_D: 두번째로 ATS인데
Hide_D: 옵션 파일에
G2m: 설계상에서 드러나는 문제점이라니
G2m: 이 무슨 우울
G2m: ..
*Rynie: 뭔가 전체적으로 갈아엎어야 할지도 모르는  ㄱ-[......]
Hide_D: XML을 기반한 파일을 넣는다는건
Hide_D: 졸라 훌륭한 아이디어
G2m: ㅇㅇ
Hide_D: 근데 여기에서 몇가지 심각한 문제가 있는게
G2m: ㅇㅇ
평군: 흠
Hide_D: (1) 필터 '다운'로드
Hide_D: (2) 부가 파일 '다운'로드
프시쵸: 그 무섭다는 판 갈아엎기...
G2m: ...
*Rynie: ''ㅋ
G2m: 아
평군: ??
G2m: 그거 싫어진다 왠지
G2m: ;
Hide_D: 뭐 저는
Hide_D: XML 파일 자체에
Hide_D: Data를 내장하는 걸 건의했었는데
*Rynie: 자동 다운로드라는 물건 ㄱ-[.....]
Hide_D: 아랄씨는
Hide_D: ATS가
Hide_D: 실행시에도 사용되어야 한다고 생각하셔서리
Hide_D: 무거워지면 안된다고 생각한거죠 ㅇㅇ
*Rynie: +ats로만 원클릭 구동을 하기에
*Rynie: 는
G2m: ㅈㅈㅈ
*Rynie: .......실행파일개조한거
*Rynie: 흠좀 ㅈㅈ[.....]
Hide_D: 자 그러면
평군: ;;;
Hide_D: 여기에 추가로 발생하는게 무엇인가 하면
G2m: ㅇㅇ
Hide_D: 코드의 유지보수인데
Hide_D: ATS 파일을 넣을때
*Rynie: .....사망스토리군요
Hide_D: 자신이 다운받아야할 파일을
G2m: 설마
G2m: 수동?
G2m: ㅡ.ㅡ
Hide_D: '직접 경로'(Direct Link)로 지정하게 되어있습니다.
Hide_D: ㅇㅇ
G2m: 헐퀴
*Rynie: ㅇㅇ[.........]
평군: 음;;
G2m: 후덜
G2m: 뭐랄까
Hide_D: 자 그러면
G2m: 0.2때보다 좀더 난감해진
G2m: 느낌이 드는건
G2m: ..
Hide_D: 예상되는 사망 시나리오 1번을 들어보죠
Hide_D: 어떤 사람이
Hide_D: 오 ATCode가 떴다 +_+를 외치며
Hide_D: 'ATS 파일을 다운 받았습니다'[!!!!}
G2m: ㅇㅇ
프시쵸: ㅇㅇ
Hide_D: 그리고
Hide_D: 원래 코드 올린 사람은
Hide_D: 사소한 문제점(게임에 지장은 없는)을 발견하고
*Rynie: 아 뭔지 필이 온닼[.........]
Hide_D: 첨부파일을 바꾸고[!!!] ATS를 새로 올렸습니다[!!!]
*Rynie: ㅋㅋㅋㅋㅋ
Hide_D: 원터치 자동 설치라는 말을 믿은 사용자는
Hide_D: 전에 받았던 ATS를 더블클릭했고
Hide_D: .... 당연히 정상동작하지 않았습니다
Hide_D: -_-?
G2m: [.........]
G2m: 그거
G2m: 결사적으로
G2m: '막아야할
G2m: 필인데
G2m: ㅡ.ㅡ
Hide_D: ㅇㅇ
*Rynie: 당연히 [........]
Hide_D: 어쩌다보니 0.2보다 더 위험한 녀석이 나와버렸습죠 ㅇㅇ
G2m: ;;
*Rynie: 유령 ATS가 생긴다는 건가
*Rynie: -ㅁ-ㅋ;
Hide_D: ㅇㅇ
Hide_D: 유령 ATS가 생기는거죠
G2m: ㅈㅈ
프시쵸: 그것 참..아슷흐랄 하네요
Hide_D: 기똥찬 표현이네요
G2m: 뭔가
G2m: 뒤숭숭한게
G2m: 떠다니는거군요
G2m: 넷상에
G2m: ..
Hide_D: ㅇㅇ -_-;
*Rynie: 뭐 -ㅁ-'아는사람만 쓰슈'
*Rynie: 라는 느낌
*Rynie: .....
G2m: 시망
Hide_D: 그러니까
Hide_D: 사실 저걸
Hide_D: 온라인 다운로드로 하려면
*Rynie: 현재의 코드센터 구조부터
Hide_D: '가상 링크'(Symbolic Link)를 이용해서
*Rynie: 갈아엎어야 할 판 같은데 [....]
Hide_D: 올려야할겁니다
Hide_D: 예를 들자면...
Hide_D: 현재 코드센터는 두고
Hide_D: 버전센터 든 뭐든
Hide_D: 뭐 암튼 그렇게 명명을 합시다 ㅇㅇ
G2m: ㅇㅇ
Hide_D: 거기에
Hide_D: 각종 첨부파일을 올려두고
Hide_D: ATS파일은
Hide_D: 그 갱신되는 첨부파일이 담긴 문서를
Hide_D: 링크하고 있었어야 했습죠 ㅇㅇ
Hide_D: 뭐 이 경우에도
Hide_D: 기존 ATS 파일은 갱신되지 않으니
G2m: [..........]
Hide_D: 결국 반 유령화되긴 마찬가지
*Rynie: ㅇㅇ[.....]
G2m: ㅈㅈ
Hide_D: 그러니까
Hide_D: 결국
Hide_D: 이렇게 될거라면
Hide_D: 저 위에 언급했던
Hide_D: '버전센터'에서
Hide_D: 신버전의 ATS파일도 같이 가지고 있다가
Hide_D: ATS 파일이 실행될때 체크를 해줘야 한다는 이야기인데
평군: ;;;
Hide_D: 그러면 애초에 ATS를 받은 이유가 없잖
G2m: 이 무슨 삽질
G2m: ...
*Rynie: 차라리 ATS생성기를 만들어서 코드센터 주소를 받고 생성기가 그 주소에 있는 코드글을 읽어서(미리 규격화된 코드글) 자료받고 다 처리해서
Hide_D: ㅇㅇ
Hide_D: 그리고 최종적으로
*Rynie: 바로가기 만들수 있나요 [....]
Hide_D: 바로가기 하나 딱 만들고
Hide_D: 끝났으면
Hide_D: ㅇㅇ
Hide_D: 그게 가장 심플하죠
Hide_D: 그렇게 했으면 가장 좋았을걸
Hide_D: 이도저도 아닌 ATS 규격이 나와버리니
Hide_D: 몹시 당황스럽지 말입니다[...]
*Rynie: 고스트양산될필[.......]
미히: 로리?
G2m: 뒤숭숭한 무언가
Hide_D: 게다가 말이죠
G2m: 인덧
Hide_D: 에러케이스2가 또 있음여
Hide_D: 이번엔 더 미묘한거 -_-
Hide_D: 에러2.
Hide_D: 우선 ATS를 받아서
Hide_D: 바로 실행해보았습니다!
Hide_D: 일단 잘되는것 같습니다 ㅇㅇ
Hide_D: 근데 좀 진행되면 특정 부분(ex: 선택지)
G2m: ...
Hide_D: 에서 튕기는 현상이 발견되어서
평군: ....안습
Hide_D: 부랴부랴 새로 고친 ATS 파일이 올라왔슴다
평군: 그건... 해결할 방법이 있긴 할지;;
Hide_D: 물론 첨부 파일 포함요
G2m: ㅈㅈㅈㅈ
Hide_D: 그래서 이 라이트 유저는
Hide_D: 아 새로 나왔군!
Hide_D: 하면서
Hide_D: ATS를 새로 받고
Hide_D: 더블클릭해서
Hide_D: 게임을 다시 켰으나
G2m: [..................]
Hide_D: ... 고쳤다는 부분은 온데간데 없고
Hide_D: 또 튕깁니다
Hide_D: 어 시발 뭥미?
프시쵸: 일반 유저는 빡칠 덧...
Hide_D: Q : 왜 그랬을까요?
Hide_D: 좀 빨리 답을 달아보자면
Hide_D: ATData 폴더의 파일이 안바뀌어서 -_-
*Rynie: 아아 [..........]
*Rynie: ㅇㅇ;
G2m: [.........]
*Rynie: 다시 안받겠지요
*Rynie: [........]
G2m: 왠지
Hide_D: 그러면 AT코드를 올린 사람은
G2m: 암흑이군
G2m: 0.3은
G2m: -_-;
Hide_D: ATData폴더를 지워야해요!
Hide_D: 라고 말해야하는데
Hide_D: 그러면..
*Rynie: 질문세례 [.......]
Hide_D: 0.2와 다를게 없잖
*Rynie: power질문공세
G2m: 개인적으론
G2m: 0.2의 체제가
G2m: 가장 이상적인덧
G2m: ..
Hide_D: ㅇㅇ
Hide_D: 그래서 초기 설치 패키지
Hide_D: 같은걸로
Hide_D: 설치를 하고
Hide_D: 바로가기를 만들어 쓰는 형식
평군: 흠... 확실히 수동코드입력의 장점이 여러가지 있네요;;
G2m: ㅇㅇ
G2m: 코드입력하는법 모름ㅋ
G2m: 하는 무개념은
Hide_D: 그래서 2번 케이스의
프시쵸: 자동이 꼭 좋은 건 아님
G2m: 일단 둘째치고
G2m: ...
Hide_D: 문제점이 뭐냐면
Hide_D: 실행파일과 설치파일이 같기 때문에
Hide_D: 발생합니다 -_-;
G2m: ...;
*Rynie: ats에서
Hide_D: 그러니까
*Rynie: 실행때마다 즉석에서 홈피에서 코드떼오면되겠지만
Hide_D: 설치 파일을 따로 만들어 두었다면 (ex : ATI 라던가?)
*Rynie: 비 네트웤 환경 시망
*Rynie: [.....]
Hide_D: 이놈을 실행하면
Hide_D: 무조건 파일이 패치될테니 문제가 없는데
평군: 아니그건 그래픽카드상표 ㅋㅋ
Hide_D: ㅋㅋㅋㅋㅋ
G2m: 후덜
G2m: 그러고보니
Hide_D: ATS가 설치, 실행도 같이 하니
G2m: 특정겜들은
Hide_D: 실행할때 이 파일이 패치되어야하는지
G2m: 파일이름도 바꿔야 또
Hide_D: 안되어야하는지 알도리가 없죠
G2m: 실행이되는 놈들이
G2m: 있군염
G2m: ...
Hide_D: 뭐 실행팡리 바꿔야 되는 레벨은
Hide_D: 애초에 실행도 난감한 경우라
Hide_D: 어쩔 수 없다 치더라도요 ㅇㅇ
G2m: ATS대응도 시망일듯;
G2m: 이 무슨 삽질의 연쇄야
G2m: ...
Hide_D: 저 ATS 대응을 해결하는 방법중 하나는
평군: 방법이 쉽게 떠오르지 않네요 =ㅅ=;;
Hide_D: 옵션을 모조리 ATS로 처박는다!
G2m: 껒
G2m: ...
Hide_D: .. 뭐 그래봐야
Hide_D: CustomDic.txt는 어쩔건데?
G2m: ㅈㅈ
Hide_D: 이러면 물론 저도 모릅니다[..]
G2m: 스스로 만들어 쓰라해염
Hide_D: 역시 외부 파일은 있는게 좋으니
Hide_D: ATS같이
평군: 아니그건 0.2랑 다를바가없잖 ㅋㅋ
Hide_D: 실행/설치 같이 돌리는건
Hide_D: 이래저래 곤란한 거죠
Hide_D: ....
Hide_D: 뭐 여기까지가
Hide_D: 0.3의 버그가 고쳐지더래도
Hide_D: 곤란한 부분 2가지[..]
G2m: 뭔가
G2m: 필사적으로
평군: 외부파일은 확실히 남겨야 하는데 이걸 고치는게... 음...
G2m: 막아야할필;
G2m: 뭘해도 대응책이
G2m: 없는
Hide_D: 곤란해요 -_-;
G2m: 이난감한
G2m: 시망ㅋ
Hide_D: 아 위에꺼
Hide_D: 떠둬야겠다.
Hide_D: Dev Talk에 올려야지

분류 :
Talk
조회 수 :
18098
등록일 :
2010.06.01
02:34:28
엮인글 :
https://arallab.hided.net/35526/5f7/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/35526
List of Articles
번호 제목 글쓴이 조회 수 추천 수sort 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
164 Talk 맵을 이렇게 사용해도 되나요? [2] Hide_D 8705   2008-08-09 2008-08-09 22:13
void CCustomDic2::SetKey(LPCSTR JpnWord, LPCSTR KorWord) { map<UINT,struct DicWord> EmptyMap; struct DicWord TempWord; map<size_t,UINT>::iterator iterBook; TempWord.WordLen = strlen(KorWord); TempWord.WordN = WordN++; UINT Hash=MakeStringHas...  
163 Talk 다음 계획 [1] Hide_D 9995   2008-08-10 2009-01-06 01:33
1. 개행 문자 처리 사용자가 정한 문자열(hex나 문자열중 하나 선택해서 입력)으로 벽을 뚫지 않도록[...] 개행문자를 처리해주는 기능 번역률 향상도 기해 할 수 있을듯. 2. 사용자 대본 기능 관련 http://koreajapan.pe.kr/make.htm 이녀석 문법 귀찮네요[.....  
162 Talk whoami님 Util.h의 옵션 파서가 [4] Hide_D 7908   2008-08-10 2008-08-10 15:13
문자열 을 지원하나요? 아니... 으음 c:documents and settindsuser내 문서Game,A루트(미완성).txt 라는 문자열을 파서로 받을 수 있나요?  
161 Talk CustomSD 원문 단어 흘리기 결과. [2] whoami 9910   2008-08-10 2009-01-06 02:06
제가 다른분이 제작하신 플러그인 테스트를 하게 될줄은.. 어쨌든. 원문 - 誰だ⑤ 誰なんだよ⑤@n美奈⑤ そいつは誰なんだ⑤ 번역 - 누구다⑤ 누구이에요놡@n미나⑤ 그 녀석은 누구야 놡 단어 흘리기 (?) 가 되다 안되다 하는군요. 중간에 "놡" 은 된 것이고.. ⑤ ...  
160 Talk 필터 3개 커밋 완료했습니다. [2] Hide_D 9263   2008-08-11 2009-01-06 01:06
HK2FK KoFilter TextDump whoami님이 안하셨길래 대신; RLCMD는 해도 괜찮을 것 같긴 한데, 이건 안하나요?  
159 Talk 어휴.. [2] file whoami 8573   2008-08-11 2009-01-06 01:06
 
158 Talk 옵션 스트링 버퍼 말이죠? [1] Hide_D 10830   2008-08-11 2008-08-11 23:22
ezTransXP단부터 확인을 해봤더니 ezTransXP도 LPSTR을 이용하는 군요 ㄱ- 옵션으로 파일명을 받으려고 했는데, 이거 참 난감하게 됬네요. c:ゲ?ムABCA_Route.txt 하면 못열테니까요. 아직 LPTSTR은 안줘봐서 모르겠지만 안된다면 충격이 좀 클듯;  
157 Talk Hide_D군님, CCustomDic2 의 문제점을 알 것 같습니다.. [1] whoami 7811   2008-08-12 2008-08-12 22:41
저번에 (5) 문제.. 기억하시나요? 아마도 이것 때문인 것 같습니다. void CCustomDic2::PreCustomDic(LPSTR Dest, LPCSTR Source) { // ... 전략 for(int head=0;head<SourceLen;head++) { for(int tail=SourceLen-1;tail>head;tail--) { // ... 중략 ... //2...  
156 Talk 플러그인을 만들다가 '또다시' 엄청난 실수를 저질렀다는걸 깨달았습니다. [2] Hide_D 7929   2008-08-12 2009-01-06 01:01
이쪽은 프로그래밍이라보가는 구상과 관련된 문제네요 ㅠ_ㅠ 현재 제가 손대고 있는 플러그인이 사용자사전 사용자대본 개행문자처리 컨트롤문자처리 인데, 두개씩 묶여있는 구조죠. 그런데... 사용자대본 -> 문장단위처리 사용자사전 -> 단어단위처리 개행문...  
155 Talk 빈공간[...] file Hide_D 11531   2008-08-16 2008-08-19 00:01
 
154 Talk 라파에님 한번 테스트해보세요. [2] file Hide_D 8759   2008-08-17 2008-08-17 16:55
 
153 Talk 라파에님 다시 한번 테스트해보세요. [3] file Hide_D 10896   2008-08-17 2008-08-17 17:23
 
152 Talk 루비문자 처리 스샷 입니다. file 라파에 8595   2008-08-17 2008-08-17 17:43
 
151 Talk 개행 처리 관련해서 일단 제 구상입니다 Hide_D 8149   2008-08-21 2009-01-06 01:05
랄까 어느새인가 개행처리가 아니라 텍스트 처리 필터가 되어있습니다만[......] (CmdFilter는 텍스트와 텍스트 바깥을 구분하고, 이건 텍스트 내부를 처리하는 느낌?) 우선 입력 받을 내용은 MaxLine MaxWord (MaxChar?) 개행 기호 문자열(또는 Hex) 그리고 ...  
150 Talk 아... 괴물한자의 정체가 Hide_D 8458   2008-08-23 2009-01-06 01:05
일반적인 과정 후킹시에 MS949 -> Shift-JIS(괴물 한자) 아랄이 인식한 텍스트 출력 함수에서 Shift-JIS(괴물 한자) -> MS949 인데, 괴물세트(?) 후킹시에 MS949 -> Shift-JIS(괴물 한자) 아랄이 인식 하지 못한 텍스트 출력 함수에서 Shift-JIS(괴물 한자) ->...  
149 Talk FixLine 예상 작동 방식 [1] file Hide_D 10715   2008-08-23 2009-01-06 02:04
 
148 Talk 토모요 애프터...... [2] file whoami 10576   2008-08-26 2009-01-06 02:04
 
147 Talk [질문]UTF 코드를 SHIFT-JIS와 KS코드로 변환 [4] 호기심맨 13984   2008-09-02 2008-09-16 23:09
안녕하세요... 요즘 Aral이란 프로그램 덕에 갑자기 컴퓨터가 좋아진 사람입니다. 다시한번 모든 개발자분께 감사하구요.. 저도 아주아주 미약한 실력이지만 .. 참여해 보려고 합니다. (Aral에 도움될 실질적 가능성 0.0001%) 제가 관심가지는 부분은 단순님이...  
146 Talk DenyWord 변경한 내용입니다 Hide_D 9493   2008-09-11 2008-09-11 23:04
1. 일단 EXACT를 추가했습니다. 정보(옵션버튼), 플러그인초기화부분, DenyWord클래스의 초기화부분이 변경되었고 실제 처리부분에서는 먼저 처리를 해준 다음 if문 대신 루프의 n값을 0으로 고쳐 루프를 돌지 않도록 처리했습니다. 2. 1바이트인지 확인하는 ...  
145 Talk 하루카 원문 [1] 나는누구인감? 10337   2008-09-16 2008-09-17 01:00
원문