E D R , A S I H C RSS

STL Error Decryptor

1. Before Reading

๋ณธ ๋ฌธ„œ๋Š” QuickInstallation For STLErrorDecryptor ˜ ๋‚ดšฉ„ ๋ฐ—…•˜๊ธฐ œ„•œ ๋ชฉ œผ๋กœ ๋งŒ๋“  Ž˜ดง€ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ„œ › ™ˆŽ˜ดง€˜ ž๋ฃŒ๊ฐ€ ‚ฌ๋ผง€ง€ •Š€ ดƒ ๊ฐ€๋Šฅ•˜๋ฉด › ™ˆŽ˜ดง€—„œ ๊ธ€„ ฝœผ…จœผ๋ฉด •ฉ๋‹ˆ๋‹ค.
๊ฐœธ™ˆŽ˜ดง€๊ฐ€ ถœฒ˜๋ผ„œ –ธ œ‚ฌ๋ผง€๊ฒŒ ๋ ง€ ๋ชจ๋ฅด๊ฒ ๊ตฐš”.
ด•˜ › ™ˆŽ˜ดง€˜ ๋‚ดšฉ๊ณผ ๋™ผ•œ ๋‚ดšฉ๋ฅด œ„‚ค˜ ๋ฌธ๋ฒ•œผ๋กœ žฌ๊ตฌ„•œ ๊ฒƒ ž…๋‹ˆ๋‹ค.

2. ๋“ค–ด๊ฐ€๊ธฐ  „—

VC++๋ฅผ ๊ฐ€ง€๊ณ  STL ”„๋กœ๊ทธ๋ž˜๋ฐ„ •˜‹œ๋Š” ๋ถ„๋“คด ๊ฐ€žฅ ๋งŽด ๋А๋ผ๋Š” ๋ถˆŽธ•จ(–ด๋А ”Œ๋žซผด๋‚˜ ๋งˆฐฌ๊ฐ€ง€ดง€๋งŒ)ค‘ •˜๋‚˜๊ฐ€ ๋ฐ”๋กœ "—๋Ÿฌ ๋ฉ”‹œง€— ๋‚˜ƒ€๋‚˜๋Š” STL ปดฌ๋„ŒŠธ๊ฐ€ ๋ฌด—‡ธง€ ๋„†ต ๋ชจ๋ฅด๊ฒ ๋‹ค"๋ผ๋Š”  ผ ๊ฒ๋‹ˆ๋‹ค. ด๋Š” ปดŒŒผ๋Ÿฌ๊ฐ€ STL …œ”Œ๋ฆฟ„ ธŠค„Šค™”•  ๋•Œ ƒ€ž… ๋งค๊ฐœ ๋ณ€ˆ˜๊ฐ€ ๋ชจ๋‘ ฌ•จ๋œ ƒƒœ๋กœ  „ฒด ด๋ฆ„„ จ ๋ฒ„๋ฆฌ๊ธฐ ๋•Œ๋ฌธ— STL …— ๋‚˜˜คง€๋„ •Š๋Š” ด๋ž˜Šค ด๋ฆ„๊ณผ …œ”Œ๋ฆฟ ด๋ฆ„ ๋“ด ๋งˆ๊ตฌ Š€–ด๋‚˜˜ด€ ๋ฌผ๋ก ด๊ฐ๋‹ˆ™€, ธŠค„Šค™”•œ ด๋ž˜Šค ด๋ฆ„ žฒด๊ฐ€ —„ฒญ๋‚˜๊ฒŒ ๊ธธ–ด ธ„œ, ฝ”๋“œ •œ „— ๋Œ€•œ —๋Ÿฌ ๋ฉ”‹œง€๊ฐ€ ˆ˜‹ญ —ฌ „๊นŒง€ ๋งŒ๋“ค–ดง€๋Š” ˜„ƒด ผ–ด๋‚˜ง€š”.
ด๋Ÿฌ•œ ˜„ƒ€ ดŽ™‹ฐ๋ธŒ STL˜ •ญ๋ชฉ 49—„œ๋„ ๋‹ค๋ฃจ–ด„ ด•ผ๊ธฐž…๋‹ˆ๋‹ค. › €ž๋Š” "๋งŽด ฝ–ด„œ ตˆ™•ด ธ๋ผ"๋ผ๋Š” ๊ฒฐ๋ก „ ๋‚ด๋ฆฌ๊ณ  žˆง€๋งŒ, ด ๋ฌธ œ๋ฅผ ๋„๊ตฌ œผ๋กœ •ด๊ฒฐ•œ ๋ฐฉ๋ฒ•๋„ žˆ๋‹ค๋Š” –ธ๊ธ‰๋„ •˜๊ณ  žˆ—ˆฃ . —ฌ๊ธฐ„œ ด•ผ๊ธฐ•˜๋Š” STL —๋Ÿฌ •ด๋…๊ธฐ(ด•˜ •ด๋…๊ธฐ)๊ฐ€ ๋ฐ”๋กœ ๊ทธ๊ฒƒž…๋‹ˆ๋‹ค. ด ๋„๊ตฌ๋Š” VC ปดŒŒผ๋Ÿฌ๊ฐ€ ถœ๋ ฅ•˜๋Š” —๋Ÿฌ ๋ฉ”‹œง€๋ฅผ ๊ฐ€๋กœ„–ด STL— ๊ด€๋ จ๋œ ๋ถ€๋ถ„„   ˆ•˜๊ฒŒ •„„ฐ๋ง•ด ค๋‹ˆ๋‹ค.
—ญ‹œ, ž˜ •„‹œ๊ฒ ง€๋งŒ, ๋ณธ ๋ฌธ„œ๋Š” ฝœผ‹œ๋Š” ๋ถ„๊ป˜„œ Visual C++ ๊ฐœ๋ฐœ ™˜๊ฒฝ๊ณผ C++ ‚ฌšฉ— ๋ถˆŽธ•ด•˜ง€ •Š๊ณ  ƒƒ‰๊ธฐ ™”๋ฉด„ ๋‘๋ ค›Œ•˜ง€ •Š๋Š”๋‹ค๋Š” ๊ฐ€ • •˜— ž‘„–ˆ๊ณ , œˆ๋„šฐ ™˜๊ฒฝ„ ตœ๋Œ€•œ ‚ฌšฉ•˜๋Š” ชฝœผ๋กœ ž‘„•˜˜€Šต๋‹ˆ๋‹ค. :)

3. STL —๋Ÿฌ •ด๋…๊ธฐ˜ ž‘๋™ ›๋ฆฌ

๊ฐ€) —ฌ๋А ๊ฐœ๋ฐœ๋„๊ตฌ™€ ๋งˆฐฌ๊ฐ€ง€๋กœ VC˜ IDE๋Š” ๊ทธ žฒด— ๋นŒ๋“œšฉ žฅน˜(ปดŒŒผ๋Ÿฌ™€ ๋งปค)๋ฅผ ๋‚ดžฅ•˜๊ณ  žˆง€ •Š๊ณ , ™ธ๋ถ€— žˆ๋Š” ปดŒŒผ๋Ÿฌ™€ ๋งปค๋ฅผ ‹ค–‰•ด„œ ”„๋กœ๊ทธ๋žจ„ ๋นŒ๋“œ•ฉ๋‹ˆ๋‹ค. ปดŒŒผ๋Ÿฌ™€ ๋งปค˜ ถœ๋ ฅ ๊ฒฐ๊ณผ๋Š” ‹ค œ๋กœ ฝ˜†”๋กœ ๋น  ธ ๋‚˜˜ค๋Š” ถœ๋ ฅดง€๋งŒ, ๋„ž„๋“œ ŒŒด”„(named pipe)๋ž€ ๊ฒƒ„ †ต•ด VC˜ IDE๋กœ ๋‹ค‹œ ๋“ค–ด๊ฐ€ ถœ๋ ฅ(output) œˆ๋„šฐ— ๋””Šค”Œ๋ ˆด๋˜๋Š” ๊ฒƒž…๋‹ˆ๋‹ค.
ปดŒŒผ„ ๋งก€ ”„๋กœ๊ทธ๋žจ€ CL.EXE๋ž€ ๊ฒƒธ๋ฐ, ด ”„๋กœ๊ทธ๋žจ€ C/C++ปดŒŒผ๋Ÿฌ(C2.DLL+C1XX.DLL)๋ฅผ ๋‚ด๋ถ€ œผ๋กœ ‹ค–‰‹œ‚ค๋Š” ”„๋ก Šธ—”๋“œ˜ —ญ• ๋งŒ„ ๋งกŠต๋‹ˆ๋‹ค. VC IDE๋Š” ปดŒŒผ‹œ ด ”„๋กœ๊ทธ๋žจ„ ‚ฌšฉ•˜๋„๋ก ๋‚ด •๋˜–ด žˆŠต๋‹ˆ๋‹ค.

๋‚˜) ›๋ž˜˜ C/C++ ปดŒŒผ๋Ÿฌ๋ฅผ ž‘๋™‹œ‚ค๋˜ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ •„„ฐ๋ง•ดฃผ๋Š” ๊ธฐ๋Šฅด ถ”๊ฐ€๋œ ”„๋ก Šธ—”๋“œ๋ฅผ CL.EXEด๋ž€ ด๋ฆ„œผ๋กœ –‰„ธ(?)•˜๊ฒŒ •˜๋ฉด, VC˜ IDE๋‚˜ ๊ธฐกด˜ ๊ฐœ๋ฐœ™˜๊ฒฝ—  „˜€ ˜–ฅ„ ฃผง€ •Š๊ณ  •„„ฐ๋ง๋งŒ •  ˆ˜ žˆ๊ฒŒ ๋  ๊ฒ๋‹ˆ๋‹ค. •ด๋…๊ธฐ Œจ‚คง€—๋Š” ด๋Ÿฐ CL.EXE๊ฐ€ ฌ•จ๋˜–ด žˆŠต๋‹ˆ๋‹ค. ด๊ฒƒ„ "”„๋ก‹œ(proxy) CL"ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

๋‹ค) •ด๋…๊ธฐ๋Š” ด๋Ÿฐ ƒƒœ—„œ ž‘๋™•ฉ๋‹ˆ๋‹ค.

  • ›๋ž˜˜ CL,EXEด CL2.EXE๋กœ ๋ฆฌ๋„ž„๋จ
  • •ด๋…๊ธฐ Œจ‚คง€— ฌ•จ๋œ ”„๋ก‹œ CLด ›๋ž˜˜ CL.EXEด žˆ๋˜ ž๋ฆฌ๋ฅผ ๋Œ€‹ •จ
  • Ž„ Šคฌ๋ฆฝŠธ ธ„”„๋ฆฌ„ฐ(PERL.EXE)๊ฐ€ ‚ฌšฉ ๊ฐ€๋Šฅ•จ
  • •ด๋…๊ธฐ Œจ‚คง€— ฌ•จ๋œ —๋Ÿฌ •„„Šคฌ๋ฆฝŠธ(STLfilt.pl)๊ฐ€ ‚ฌšฉ๊ฐ€๋Šฅ •จ

๋ผ)•ด๋…๊ธฐ๋Š” œ„˜ ƒƒœ—„œ ด๋ ‡๊ฒŒ ž‘๋™•ฉ๋‹ˆ๋‹ค.
  • ”„๋ก‹œ CL(CL,EXE)ด CL2.EXE๋ฅผ ‹ค–‰•จ
  • Ž„ Šคฌ๋ฆฝŠธ ธ„”„๋ฆฌ„ฐ(PERL.EXE)๋ฅผ ‹ค–‰•˜๊ณ , —๋Ÿฌ •„„Šคฌ๋ฆฝŠธ(STLfilt.pl)๋ฅผ ๋„›€
  • CL2.EXE๊ฐ€ ๋‚ด๋Š” ปดŒŒผ ๊ฒฐ๊ณผ๋ฅผ —๋Ÿฌ •„„Šคฌ๋ฆฝŠธ— ŒŒด”„(pipe)๋ฅผ †ต•ด †ต๊ณผ‹œ‚ด
  • —๋Ÿฌ •„„Šคฌ๋ฆฝŠธ๋Š” ž‹ ด ๋ฐ›€ ปดŒŒผ ๊ฒฐ๊ณผ๋ฅผ •„„ฐ๋ง•˜—ฌ ๋‹ค‹œ VC˜ IDE๋กœ  „†ก

 „ฒด ธ ๋™ž‘ ›๋ฆฌ๋ฅผ ๊ฐ„๋žต•˜๊ฒŒ •„๋ž˜˜ ๊ทธ๋ฆผœผ๋กœ  •๋ฆฌ•ด ๋ณด•˜Šต๋‹ˆ๋‹ค.

WorkingMethod.gif

๋งˆ) ๋ณ„๋กœ ๋ณตžก•ด๋ณดด„ •Šง€๋งŒ, ๋ฌธ œ๋Š” ด ž‘—…„ †œผ๋กœ ๋ชจ๋‘ •ดฃผ–ด•ผ •œ๋‹ค๋Š” ๊ฒ๋‹ˆ๋‹ค. —ฌ๊ธฐ๊นŒง€ ๋‹ค ฝœผ‹  ๋ถ„€ ด œ ๋ณธ๋ฌธœผ๋กœ ๋“ค–ด๊ฐ‘‹œ๋‹ค.

4. •„š”•œ ”„๋กœ๊ทธ๋žจ๊ณผ ๋„๊ตฌ๋ฅผ ๋ฐ›•„„œ ค€๋น„•˜๊ธฐ

๊ฐ€) •ด๋…๊ธฐ๋ฅผ „น˜•˜๋Š”๋ฐ •„š”•œ ค€๋น„๋ฌผ€ ๋‹คŒ๊ณผ ๊ฐ™Šต๋‹ˆ๋‹ค. •˜๋‚˜”ฉ ๋ฐ›•„๋‘ก‹œ๋‹ค. ฐพ•„๋‹ค๋‹ˆ๊ธฐ ๊ท€ฐฎœผ‹  ๋ถ„€ ด ›‚ฌดŠธ˜ ž๋ฃŒ‹ค—„œ ๋ชจ๋‘ ๋ฐ›•„ ™€๋„ ๋˜๊ฒ ง€š”.

  • STL —๋Ÿฌ •ด๋…๊ธฐ Œจ‚คง€ (Win32šฉ) : STLfilt.zipด๋ž€ ด๋ฆ„„ ๊ฐ€ง€๊ณ  žˆŠต๋‹ˆ๋‹ค (http://ww.bdsoft.com/tools/stlfilt.html)
  • Ž„ Šคฌ๋ฆฝŠธ ธ„”„๋ฆฌ„ฐ(Win32šฉ) : —ฌ๊ธฐ„œ๋Š” ActivePerl„ ‚ฌšฉ•ฉ๋‹ˆ๋‹ค. (http://ww.activestate.coml)
  • MSVCP60.DLL : STL —๋Ÿฌ •ด๋…๊ธฐ˜ ปจŠธ๋กค๋Ÿฌ๊ฐ€ ‚ฌšฉ•˜๋Š” DLLž…๋‹ˆ๋‹ค (˜ต…˜).

๋‚˜) Ž„Šคฌ๋ฆฝŠธ ธ„”„๋ฆฌ„ฐ๋ฅผ „น˜•ฉ๋‹ˆ๋‹ค.( €๋Š” D:\— „น˜–ˆŠต๋‹ˆ๋‹ค)

๋‹ค) ๋งŒ๋งŒ•ด ๋ณดด๋Š” ๋””๋ ‰† ๋ฆฌ—๋‹ค๊ฐ€ STLfilt.zip˜ ••ถ•„ ’‰๋‹ˆ๋‹ค. ( €๋Š” H:\STLfilt ๋ž€ ๋””๋ ‰† ๋ฆฌ— ••ถ•„ ’€—ˆŠต๋‹ˆ๋‹ค.)

FilesUnzipped.gif

๋ผ) ๊ผญ •Œ๊ณ  žˆ–ด•ผ •˜๋Š” ŒŒผ๋งŒ ๊ฐ„๋‹จžˆ „ค๋ช…•˜๋ฉด ๋‹คŒ๊ณผ ๊ฐ™Šต๋‹ˆ๋‹ค. ผ๋‹จ ›‘–ด๋งŒ ๋ณด‹œฃ .

  • CL.EXE : VC—„œ ‚ฌšฉ•˜๋Š” ›๋ž˜˜ CL.EXE๋ฅผ ๋Œ€‹ •  ”„๋ก‹œ CL.
  • STLTask.EXE : •ด๋…๊ธฐ˜ •„„ฐ๋ง ๊ธฐ๋Šฅ„ † ๊ธ€•˜๋Š” ปจŠธ๋กค๋Ÿฌ๋กœ, œˆ๋„šฐ ž‘—…‘œ‹œ„(TaskBar)— œ„น˜•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • Proxy-CL.INI : ”„๋ก‹œ CLด ž‘๋™•˜๋Š” ™˜๊ฒฝ„  œ๊ณต•˜๋Š” INI ŒŒผ.
  • STLfilt.pl : ปดŒŒผ๋Ÿฌ˜ ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ •„„ฐ๋ง •ดฃผ๋Š” Ž„ Šคฌ๋ฆฝŠธ.ด ŒŒผ˜ œ„น˜๋ฅผ ž˜ ๊ธฐ–ต•ด๋‘„š”.
  • CL.CPP: ”„๋ก‹œ CL˜ †ŒŠค ฝ”๋“œ. ๊ด€‹ฌžˆ๋Š” ๋ถ„€ •œ ๋ฒˆ ๋ณด„š”. ๊ฝค ž˜ งฐŠต๋‹ˆ๋‹ค.
๋งˆ) ๋‹ค ๋˜—ˆœผ๋ฉด, 4๋กœ ๋„˜–ด๊ฐ‘๋‹ˆ๋‹ค.

5. ”„๋ก‹œ CL „น˜•˜๊ธฐ

”„๋ก‹œ CLด ›๋ž˜˜ CL.EXE˜ –‰„ธ๋ฅผ •  ˆ˜ žˆ๋„๋ก •˜๋Š” ๊ณผ •ž…๋‹ˆ๋‹ค.

๊ฐ€) Visual C++๊ฐ€ „น˜๋œ ๋””๋ ‰† ๋ฆฌ๋กœ ด๋™•˜๊ณ , —ฌ๊ธฐ„œ \bin ๋””๋ ‰† ๋ฆฌ๊นŒง€ ฐพ•„ ๋“ค–ด๊ฐ‘๋‹ˆ๋‹ค. ( œ ๊ฒฝšฐ—๋Š” D:\Program Files2\Microsoft Visual Studio .NET\Vc7\binž…๋‹ˆ๋‹ค.)  œ๋Œ€๋กœ ๊ฐ”œผ๋ฉด, ›๋ž˜˜ CL„ ๋ฐ—…šฉœผ๋กœ ๋ชจ…”๋‹ค ๋†“„ ด๋”๋ฅผ •˜๋‚˜ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ( œ ๊ฒฝšฐ—๋Š” native_clด๋ž€ ด๋ฆ„œผ๋กœ ๋งŒ๋“ค—ˆŠต๋‹ˆ๋‹ค.) ๊ทธ๋ฆฌ๊ณ  ๋‚˜„œ CL.EXE๋ฅผ ๊ทธ ด๋”— ๋ณต‚ฌ•ด ๋‘ก๋‹ˆ๋‹ค.

OriginalCLFolderMaking.gif

๋‚˜) \bin ๋””๋ ‰† ๋ฆฌ— žˆ๋Š” CL.EXE๋ฅผ CL2.EXE๋กœ ด๋ฆ„„ ๋ฐ”๊พธ–ด ค๋‹ˆ๋‹ค.

CL2Rename.gif

๋‹ค) ด   ”„๋ก‹œ CL˜ ๋™ž‘— •„š”•œ ™˜๊ฒฝ ˜ต…˜„  œ๊ณต•˜๋Š” Proxy-CL.INI ŒŒผ„ —ฌ๋Ÿฌ๋ถ„˜ ๊ฐœ๋ฐœ™˜๊ฒฝ— ๋งž๊ฒŒ ๊ณ ณ•ผ •ฉ๋‹ˆ๋‹ค. …ŠคŠธ Žธง‘๊ธฐ๋กœ Proxy-CL.INI๋ฅผ —ด๋ฉด •„๋ž˜˜ common, proxy.cl, stltask.exe ๋ถ€๋ถ„ด ๋ชจ๋‘ ๋น„–ด žˆ๋Š”๋ฐ, œ—๋ถ€๋ถ„˜ ฃผ„๋ฌธ„ ฐธ๊ณ •˜๋ฉด„œ ™˜๊ฒฝ ๋ณ€ˆ˜๋ฅผ ๊ณ ณค๋‹ˆ๋‹ค. ๋ฐ˜๋“œ‹œ „ ••ด•ผ •˜๋Š” ˜ต…˜€ ๋‹คŒ๊ณผ ๊ฐ™Šต๋‹ˆ๋‹ค.

  • FILTER_SCRIPT : •„„ฐ๋ง Ž„ Šคฌ๋ฆฝŠธ(STLfilt.zip)˜  „ฒด ๊ฒฝ๋กœ. ๋ฐ˜๋“œ‹œ ŒŒผ ด๋ฆ„๊นŒง€ จ ฃผ–ด•ผ •ฉ๋‹ˆ๋‹ค.
  • TOGGLE_FILE : •„„ฐ๋ง ™œ„™”๋ฅผ † ๊ธ€๋ง•˜๋Š” ŒŒผด œ„น˜•  ๋””๋ ‰† ๋ฆฌ. ƒ๊ฐ•  ‹œ๊ฐ„ —†๋Š” ๋ถ„€ STLfilt.zip˜ ••ถ•„ ‘ผ œ„น˜๋กœ  ••ดฃผ„š”.
  • PERL_EXE : Ž„ Šคฌ๋ฆฝŠธ ธ„”„๋ฆฌ„ฐ(PERL.EXE)˜  „ฒด ๊ฒฝ๋กœ. —ญ‹œ ŒŒผ ด๋ฆ„๊นŒง€ จ ฃผ„š”.
  • CL_DIR : VC˜ ปดŒŒผ๋Ÿฌ ”„๋ก Šธ—”๋“œธ CL.EXE๊ฐ€ œ„น˜•œ ๋””๋ ‰† ๋ฆฌ. ด ๋ถ€๋ถ„„ ง€ ••˜ง€ •Šœผ๋ฉด •ด๋…๊ธฐ ปจŠธ๋กค๋Ÿฌ๊ฐ€  œ๋Œ€๋กœ ž‘๋™•˜ง€ •ŠŠต๋‹ˆ๋‹ค.

•„๋ž˜˜ ๊ทธ๋ฆผ€  €˜ Proxy-CL.INI ŒŒผž…๋‹ˆ๋‹ค.
ProxyCLConfigure.gif

๋ผ) ด๋ ‡๊ฒŒ Žธง‘•œ Proxy-CL.INI๋ฅผ œˆ๋„šฐ ๋””๋ ‰† ๋ฆฌ— ๋ณต‚ฌ•ฉ๋‹ˆ๋‹ค. œˆ๋„šฐ ๋””๋ ‰† ๋ฆฌ๋ž€ œˆ๋„šฐ 98/ME ๋“—„  \WINDOWSด๊ฒ ๊ณ , œˆ๋„šฐ NT/2000/XP ๋“—„  \WINNT ด๊ฒ ง€š”. ฆ‰ šด˜ฒด œ™€ ”„๋กœŒŒผ ŒŒผ๋“คด ๋“ค–ด žˆ๋Š” ๊ณณž…๋‹ˆ๋‹ค. ”„๋ก‹œ CL€ ๊ธฐ๋ณธ œผ๋กœ ด œˆ๋„šฐ ๋””๋ ‰† ๋ฆฌ—„œ ฝ€ Proxy-CL.INI„ ๊ฐ€ง€๊ณ  ๋™ž‘ ˜ต…˜„  ••ฉ๋‹ˆ๋‹ค.
ProxyCLConfigFileCopy.gif

๋งˆ) ด œ, STLfilt.zip˜ ••ถ•„ ‘ผ ๋””๋ ‰† ๋ฆฌ—„œ ”„๋ก‹œ CL„ ๋ณต‚ฌ•ด„œ VC˜ \bin ๋””๋ ‰† ๋ฆฌ— ๋ถ™ž…๋‹ˆ๋‹ค.
ProxyCLCopy.gif

๊ฐ™ž–ง€๋งŒ ž˜๋“  ผ€ ด œ ๋๋‚ฌŠต๋‹ˆ๋‹ค. ^^ ๋‹ค ๋˜—ˆœผ๋ฉด 5๋ฒˆœผ๋กœ ๋„˜–ด๊ฐ‘‹œ๋‹ค.

6. •ด๋…๊ธฐ ปจŠธ๋กค๋Ÿฌ ‹ค–‰•˜๊ธฐ

”„๋ก‹œ CL˜ —๋Ÿฌ •„„ฐ๋ง„ ™œ„™”•˜๊ฐ๋‚˜ ๋น„™œ„™”•˜๋Š” —ญ• „ ๋งก€ ”„๋กœ๊ทธ๋žจธ STLtask.exe๋ฅผ ‹ค–‰‹œผœ ƒœŠคฌ๋ฐ”— ๋„šฐ๋Š” ๊ณผ •ž…๋‹ˆ๋‹ค.

๊ฐ€) STLfilt.zip˜ ••ถ•„ ‘ผ ๋””๋ ‰† ๋ฆฌ—„œ STLtask.exe๋ฅผ ‹ค–‰•ฉ๋‹ˆ๋‹ค. ๋ณ„ ๋ฌธ œ๊ฐ€ —†œผ๋ฉด •„๋ž˜™€ ๊ฐ™€ ๋Œ€™” ƒž๊ฐ€ ๋œน๋‹ˆ๋‹ค.
STLTaskFirstRun.gif

ฐธ๊ณ ) ๋Œ€™” ƒž˜ ƒ๋‹จ„ ๋ณด๋ฉด "CL.EXE๋ฅผ CL.STL๋กœ ๋ณต‚ฌ–ˆ๋‹ค"๋ž€ ๋ฉ”‹œง€๊ฐ€ ๋ณดด๋Š”๋ฐ, ด๋Š” ”„๋ก‹œ CL๋„ ๋ฐ—…šฉœผ๋กœ •˜๋‚˜ ๋ณต‚ฌ•ด ๋‘”๋‹ค๋Š” ๋œปด๋‹ˆ ๊ด˜๋…น˜ •Š•„๋„ ๋ฉ๋‹ˆ๋‹ค.

ฐธ๊ณ 2) ด ๋Œ€™” ƒž๊ฐ€ ๋œจง€ •Š๊ณ  "MSVCP60.DLLด —†๋‹ค" ๋ผ๋Š” ๋ฉ”‹œง€๊ฐ€ ๋‚˜˜ค๋ฉด ด DLL„ ‹œŠค…œ ๋””๋ ‰† ๋ฆฌ— ๋ณต‚ฌ•ด ฃผ„š”.

๋‚˜) œ„˜ ๋Œ€™” ƒž—„œ Back to taskbar ๋ฒ„Šผ„ˆ„๋ฅด๋ฉด œˆ๋„šฐ˜ ž‘—… ‘œ‹œ„(ƒœŠคฌ๋ฐ”)— •„ดฝ˜ด •˜๋‚˜ ๋œน๋‹ˆ๋‹ค. ด •„ดฝ˜„ ˜ค๋ฅธชฝ ด๋ฆญ•˜๋ฉด ๋ฉ”๋‰ด๊ฐ€ ๋œน๋‹ˆ๋‹ค.
STLTaskMenu.gif

—ฌ๊ธฐ„œ "Enable Filtering"„ „ ƒ•˜๋ฉด ๊ทธ๋•Œ๋ถ€„ฐ STL —๋Ÿฌ •„„ฐ๋งด ๊ฐ€๋Šฅ•ดง‘๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ , •žœผ๋กœ STL —๋Ÿฌ •„„ฐ๋ง„ ™œ„™”•˜๊ฐ๋‚˜ ๋น„™œ„™”•  ๋•Œ—๋Š” ด ƒœŠคฌ๋ฐ”˜ •„ดฝ˜„ ‚ฌšฉ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค(Enable filtering/Disable filtering„ „ ƒ•˜๋ฉด ๋˜๊ฒ ฃ ). •„„ฐ๋งด ™œ„™” ๋˜–ด žˆ๋А๋ƒ ๊ทธ๋ ‡ง€ •Šœผ๋ƒ˜ —ฌ๋ถ€๋Š” ž‘—… ‘œ‹œ„˜ •„ดฝ˜ ƒ‰๊น”( STLTaskActIcon.gif€ ™œ„™”๋˜—ˆ๋‹ค๋Š” ๋œป)๋กœ ™•ธ•  ˆ˜ žˆŠต๋‹ˆ๋‹ค.

7. …ŒŠคŠธ!

ด œ ๋‹ค ๋๋‚ฌŠต๋‹ˆ๋‹ค. •ด๋…๊ธฐ๊ฐ€  œ๋Œ€๋กœ „น˜๋˜—ˆ๋Š”ง€ ™•ธ•˜๋Š” ˜๋ฏธ—„œ —๋Ÿฌ๋ฅผ ผœผผœ๋ด•ผ๊ฒ Šต๋‹ˆ๋‹ค.^^

๊ฐ€) VC++๋ฅผ ‹ค–‰‹œ‚ค๊ณ , •„๋ž˜™€ ๊ฐ™ด ”„๋กœ๊ทธ๋žจ„ จ ๋ด…‹œ๋‹ค.
~cpp 
#include<string>
using namespace std;

int main()
{
   string s(10); // ปดŒŒผ —๋Ÿฌ๋ฅผ ผœผ‚ค๋Š” ๋ฌธžฅ, •˜๋‚˜˜ ๋งค๊ฐœ ๋ณ€ˆ˜๋ฅผ ๋ฐ›๋Š” string ƒ„ž๋Š” • ๋‹นž๋งŒ„ ๋ฐ›Šต๋‹ˆ๋‹ค.
   return 0;
}

๋‚˜) Build๋‚˜ Complie ๋ช…๋ น„ ๋‚ด๋ ค„œ ด †ŒŠค๋ฅผ ปดŒŒผ•ด ๋ด…‹œ๋‹ค.

-> STL •„„ฐ๋งด ™œ„™”๋˜–ด žˆง€ •Š•˜„ ๋•Œ˜ ปดŒŒผ ๊ฒฐ๊ณผ(VC++.NET˜ ๊ฒฝšฐ)๋Š” ๋‹คŒ๊ณผ ๊ฐ™Šต๋‹ˆ๋‹ค.  ˆ๋ง ธ •”˜ธ๊ฐ€ ๋„๋ธŒ๋Ÿฌ ธ žˆŒ„ •Œ ˆ˜ žˆŠต๋‹ˆ๋‹ค.


~cpp 
ปดŒŒผ•˜๊ณ  žˆŠต๋‹ˆ๋‹ค.

     ****** {BD Software Proxy CL v2.26} STL Message Decryption is Off ******

Test.cpp
h:\MyProgrammingLab\JunkRoom\Weired_C++\Test.cpp(6) : 
error C2664: 'std::basic_string<_Elem,_Traits,_Ax>::basic_string(const std::basic_string<_Elem,_Traits,_Ax>::_Alloc &) with [_Elem=char,_Traits=std::char_traits<char>,_Ax=std::allocator<char>]' : ๋งค๊ฐœ ๋ณ€ˆ˜ 1„(๋ฅผ) 'int'—„œ 'const std::basic_string<_Elem,_Traits,_Ax>::_Alloc & with [_Elem=char,_Traits=std::char_traits<char>,_Ax=std::allocator<char>]'(œผ)๋กœ ๋ณ€™˜•  ˆ˜ —†Šต๋‹ˆ๋‹ค.; ›ธ: 'int'—„œ 'const std::basic_string<_Elem,_Traits,_Ax>::_Alloc with [_Elem=char,_Traits=std::char_traits<char>,_Ax=std::allocator<char>]'(œผ)๋กœ ๋ณ€™˜•  ˆ˜ —†Šต๋‹ˆ๋‹ค.; †ŒŠค ˜•‹„ ๊ฐ€ ธ˜ฌ ˆ˜ žˆ๋Š” ƒ„ž๊ฐ€ —†๊ฐ๋‚˜ ƒ„ž ˜ค๋ฒ„๋กœ๋“œ ™•ธด ๋ชจ˜ธ•ฉ๋‹ˆ๋‹ค.

-> STL •„„ฐ๋งด ™œ„™”๋˜–ด žˆ„ ๋•Œ˜ ปดŒŒผ ๊ฒฐ๊ณผ(VC++.NET˜ ๊ฒฝšฐ)๋Š” ๋‹คŒ๊ณผ ๊ฐ™Šต๋‹ˆ๋‹ค. ฐธœผ๋กœ ๋งŽ€ ๋ถ€๋ถ„ด •Œ๊ธฐ ‰ฝ๊ฒŒ ๋˜–ด žˆŒ„ •Œ ˆ˜ žˆŠต๋‹ˆ๋‹ค.


~cpp 
ปดŒŒผ•˜๊ณ  žˆŠต๋‹ˆ๋‹ค.

  ****** {BD Software Proxy CL v2.26} STL Message Decryption is ON! ******

Test.cpp
h:\MyProgrammingLab\JunkRoom\Weired_C++\Test.cpp(6): 
error C2664: 'string::basic_string(alloc &)': ๋งค๊ฐœ ๋ณ€ˆ˜ 1„(๋ฅผ) 'int'—„œ 'alloc &'(œผ)๋กœ ๋ณ€™˜•  ˆ˜ —†Šต๋‹ˆ๋‹ค.;›ธ: 'int'—„œ 'alloc'(œผ)๋กœ ๋ณ€™˜•  ˆ˜ —†Šต๋‹ˆ๋‹ค.; †ŒŠค ˜•‹„ ๊ฐ€ ธ˜ฌ ˆ˜ žˆ๋Š” ƒ„ž๊ฐ€ —†๊ฐ๋‚˜ ƒ„ž ˜ค๋ฒ„๋กœ๋“œ ™•ธด ๋ชจ˜ธ•ฉ๋‹ˆ๋‹ค.

ฐธ๊ณ ) VC++.NET„ ‚ฌšฉ•˜‹œ๋Š” ๋ถ„˜ ๊ฒฝšฐ—” ปดŒŒผ  „— ๋ฐ˜๋“œ‹œ /WL ˜ต…˜„ ฃผ–ด•ผ •ฉ๋‹ˆ๋‹ค. /WL ˜ต…˜€ ๋ชจ๋“  —๋Ÿฌ ๋ฐ ๊ฒฝ๊ณ  ๋ฉ”‹œง€๋ฅผ •œ „๋กœ ‘œ‹œ•ด ฃผ๋Š” ˜ต…˜ž…๋‹ˆ๋‹ค. VC++.NET€ †ŒŠค ฝ”๋“œ •œ „— ๋Œ€•œ —๋Ÿฌ ๋ฉ”‹œง€๋ฅผ —ฌ๋Ÿฌ „— ๊ณ(\n๋ฌธž๋ฅผ ๋ผ›Œ๋„–ด„œ) ‘œ‹œ•˜๋Š”๋ฐ, —๋Ÿฌ •„„ฐ๋ง Šคฌ๋ฆฝŠธ๋Š” —๋Ÿฌ ๋ฉ”‹œง€๊ฐ€ •œ „๋กœ ๋˜–ด žˆ„ ๋•Œ žฌ๋Œ€๋กœ ๋™ž‘•˜๊ธฐ ๋•Œ๋ฌธž…๋‹ˆ๋‹ค. •„๋ž˜™€ ๊ฐ™ด ”„๋กœ Šธ †„ Ž˜ดง€—„œ C/C++˜ ๋ช…๋ น„ •ญ๋ชฉ„ „ ƒ•œ ›„ /WL ˜ต…˜„ ถ”๊ฐ€•ฉ‹œ๋‹ค.

8. ๋ฌธ„œ •๋ณด ๋ฐ ถœฒ˜

๋ฌธ„œ  •๋ณด
ตœˆ ž‘„ :2001/04/24
ตœข… —…๋ฐดŠธ : 2001/04/26
ฌŠคŒ… : 2001/04/26
 šฉ ”Œ๋žซผ : Win32 / VC++ 6 & VC++.NET
ž‘„/ €ž‘ž: ๊ณฝšฉžฌ (kwak101@hitel.net)
›๋ฌธ)http://www.kwak101.pe.kr/kwak101/works/InternData/STLDecryptor_QuickGuide.html

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:27:57
Processing time 0.0359 sec