U E D R , A S I H C RSS

erunc0/COM

COM€ ‹šฉฃผ˜ฐ€ ๋‚˜€ ‚ฐ๋ฌผด๋‹ค. ๋งˆ€— ๋“ ‹ค. ƒ—… „ณต„ ด๋ŒฒŒ ๋œ œ •ผ ๋ฌด—‡ด๋“  „—.. ถ”ƒ •™๋ฌธ•„‹Œ ‹šฉ •™๋ฌธ„  ‘•ด ๋ณด  ‹—ˆธฐ ๋•Œ๋ฌธ—.. ณต๋ถ€•˜ธฐ๋กœ ๋งˆŒ ๋จน—ˆ๋‹ค. ๋˜, •˜‹ฐ€ ธ๋งŒ ๋‘๋ฉด •ˆ๋ …๋ฐ.. ๋ผ๋Š” ฑฑ •€ ๋’ค๋กœ žฌณ ๋‘  ฑ…•œถŒ„ ตฌ•„œ ฐจฐจผ ๋ณดธฐ๋กœ –ˆ๋‹ค.
  • ฑ… •๋ง –ด๋ ต๋‹ค.
  • •€๋‚œ‹ค.


1. Essential COM

1.1. 1. –ฅƒ๋œ C++œผ๋กœจ˜ COM

  • „‹•œ C++ ด๋ž˜Šค๋กœ ‹œž‘•˜—ฌ žฌ‚ฌšฉ ฐ€๋Šฅ•œ „ Component๋กœจ ด๋ž˜Šค๋ฅผ ‚ฌšฉ•˜๋Š” ๋ฒ•„ „‹•œ ˜ˆ œ๋ฅผ †ต•„œ ๋ฐฐšฐฒŒ ๋œ‹ค. ˜Œ€ DLL„ †ต•„œ client —ฒŒ  œณต•˜๋Š” ๋ฌธ œ— ๋Œ€•ด ๋ง•˜๋ฉฐ. ๋‹Œ—๋Š” ด๋ ‡ฒŒ  œณต๋˜–ด„ ปดฌ๋„ŒŠธ— ๋Œ€•œ ๋ฐฉ™”๋ฒฝ(?)๋“ฑ— ๋Œ€•ด ๋…ผ˜ •˜๋ฉด„œ „Ž˜Šค๋ฅผ †ต•˜—ฌ ปดฌ๋„ŒŠธ ๋‚ด˜ €๋‹‰™”๋ฅผ œ„•œ ๋ฐฉ๋ฒ•๋“ค„ „ค๋ช…•ค€๋‹ค. ธ๋ฆฌ  ธ๋‹Œœผ๋กœ๋Š” abstract class๋ฅผ ‚ฌšฉ•ด (virtual function„ šฉ•œ ๋ฐฉ๋ฒ•) „Ž˜Šค˜ ™•žฅ— ด€•œ ๋ถ€๋ถ„นŒง€ „ค๋ช…•œ‹ค. ธ๋ฆฌ  ๋œผ๋กœ๋Š” RTTI šฉ•˜—ฌ ๋” ๋‚˜€ „Ž˜Šค˜ ™•žฅ ๋ฐฉ๋ฒ•ณผ ๋‹‘˜ client —ฒŒ ปดฌ๋„ŒŠธ๋ฅผ  œณต• ˆ˜ žˆฒŒ ๋งŒ๋“œ๋Š” ๋ถ€๋ถ„นŒง€ „ค๋ช…•œ‹ค. •œ„œ„œ ธ๋Ÿฐง€ • ๋งค•œ šฉ–ด๋“คด ๋งŽžˆ–ด„œ •„ง๋„ •ฐ€ ฐ€งˆ •Š๋Š” ๋ถ€๋ถ„ด ๋งŽ•˜‹ค. •œ๋ฒˆ๋” chapter 1‘ € ›„—  •๋ฆฌ•˜  chapter 2๋กœ„˜–ดฐ€••˜ ‹ค.

1.2. 2. Interface

1.3. 3. Class

1.4. 4. ...

2. Thread

  •  •๋ง ‹œ„—†๋‹ค. šŒ‚ฌ—„œ •˜๋Š”ผ๋„ —„ฒญ ‰ฌšด ฒƒ๋“คธ๋ฐ ™œด๋ฆฌ ‹œ„ด ๋งŽด ๋“œ๋Š”ง€.. •„ด๋Ÿฌ๋‹ˆ •˜‹ค. chapter1„ –ด„œ  •๋ฆฌ •••˜๋Š”๋ฐ, ฝค œฐฎ€ ๋‚ดšฉ ฐ™•˜‹ค. ๋‹‹œ review•˜๋ฉด„œ  •๋ฆฌ•••˜๋Š” ‹œ„ด ๋‚˜ธธ. ฃผ๋งด๋‚˜ ฐ€๋Šฅ •˜ ‹ค.


  • œ œผ๋กœ COM ตฌ˜„• •Œ๋Š” ( •™•žˆ•ผ ๋ญ ActiveX Control) †ˆ˜ COM ตฌ˜„•˜๋Š”๋ฐ •˜๋Š” ผ๋“คด ๋งŽ•„„œ -_-.. (Interface ž‘„•˜  IDL ปดŒŒ•ฃผ , COM Component DLL Register •ฃผ  ธ๋‹Œ COM Component ž˜ ๋Œ•„ฐ€๋Š”ง€ …ŒŠคŠธ ๋“ฑ๋“ฑ) ฑฐ˜ Visual Studio ˜ œ„ž๋“œ๋กœ ž‘„•œ‹ค๋Š”. --a ธ๋ฆฌ  COM „ •• •Œ—๋Š” OOP — ๋Œ€•œ ข€ ๋ฐ”๋ฅธ •ด๋ฅผ ‘„— •„š”๋กœ • ฒƒด๋ƒฐ. ๋””žŒจ„—„œ˜ Factory, FacadePattern — ๋Œ€•„œ๋„ •„๋งˆ –ด๋ณผ ƒธฐธฐ๋ƒฐ.
    • ' •๋ฆฌ'— –ฝ๋งคง€ •Šธฐ๋ฅผ. ๋ญ, ˜˜„ ž๋„ฐ€ ณต๋ถ€•˜๋ฉด„œ „žฅ–ˆ๋‹ค๋ฉด ฒƒœผ๋กœ กฑ•œฒƒ.. (˜ˆ „—๋Š” ' •๋ฆฌ'••„žฅ•œ‹‹œผ๋กœ —ด‹žˆ ‚ฌ๋žŒ๋“ค„ „ค๋“–ˆง€๋งŒ. ๋ญ.) ๋‹จ, •œฐ€ง€ ๋” ถฉ ผ๋ฉด 'ธ€๋กœ  •๋ฆฌ–ˆ„•Œ™€ •ˆ–ˆ„•Œ'˜ •™Šต šจณผ๋Š” •Œ•„„œ ๋น„ต•ด๋ณดธฐ ๋ฐ”๋ž€๋‹ค๋Š”.  -_-v ฐ€žฅ •™Šตšจณผ๋ฅผ ๋†’ด๋Š”ฑด, ฑ…๋ณด   •๋ฆฌ•˜ง€ ๋ง  'žธฐ ๋จธ๋ฆฟ†œผ๋กœ •„๋Š” •œ๋„๋งŒผ๋งŒ  •๋ฆฌ•˜ผ' ๋ผ๋Š”ฒƒ. --1002
  • •™ต ˆ˜—… ๋”ฐ๋ฐ€ธฐ๋„ ๋ฒ…ฐจ๋„ค. •Œ๋ฐ”๋„ ž˜๋“ค , ๋ˆ€ —† .. -_-; •„.. ‚ดธฐ ž˜๋“ค–ด๋ผ.. –ธ œ ๋ณด๋ƒ.. COM€.. ใ…œใ…ก •„.. ‚ดธฐ ‹–ด๋ผ.. -- guts
  • COM ๋ณด๋Š”ตฌ๋‚˜ ๋‚˜๋„ œ•™•˜  ๋ถ€„ฐ ๋ณด žˆ๋Š”๋ฐ Standard C++๋กœ ตฌ˜„•œฒƒ€ ๋ฐ˜๋„ •ด๋ชป•˜ ~ MFC๋กœ ตฌ˜„•˜๋Š”ฑฐ ๋ณด žˆ๋‹ค. ˜Œ—” ›น—„œ „˜๋˜๋Š” ActiveX ๋ณด๋  –ˆ๋Š”๋ฐ –ดฉŒ๋‹ค ๋ณด žˆ๋Š”ง€ ~  •๋ฆฌž˜•ด๋ผ ๋ณด•„„˜ --‘‹

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:31:40
Processing time 0.0154 sec