ãããã°æ å ±ã¹ãã¬ãŒãžã®å±é
1.ç°å¢ã®æºå
ãããã°ã·ã³ãã«ã®ãªããžããªãå±éããã«ã¯ã次ã®ãã®ãå¿ èŠã§ãã
- ã€ã³ã¿ãŒãããã«ã¢ã¯ã»ã¹ã§ããã³ã³ãã¥ãŒã¿ãŒïŒçŽæ¥ãŸãã¯ãããã·çµç±ïŒãWindows 2003 ServerãŸãã¯Windows XP Proãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãã€ã³ã¿ãŒãããã€ã³ãã©ã¡ãŒã·ã§ã³ãµãŒãã¹WebãµãŒããŒ
- Windowsãã£ã¹ããªãã¥ãŒã·ã§ã³ã®ãããã°ããŒã«ã é åžã¯æ¬¡ã®ãµã€ãããååŸã§ããŸãïŒ www.microsoft.com/whdc/DevTools/Debugging/default.mspx ãããŒãžã§ã³x86ãŸãã¯x64
- ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®æåã®èšå·ã é åžã¯æ¬¡ã®ãµã€ãããååŸã§ããŸãïŒ www.microsoft.com/whdc/devtools/debugging/symbolpkg.mspx
- ãããã·é åžïŒã€ã³ã¿ãŒããããžã®çŽæ¥ã¢ã¯ã»ã¹ã®å ŽåïŒ
ãã£ã¹ããªãã¥ãŒã·ã§ã³ãããDebugging Tools for WindowsïŒãCïŒ\ Program Files \ Debugging Tools For Windowsããã©ã«ãã«ã€ã³ã¹ããŒã«ãããŠãããšä»®å®ããŸãïŒãã€ã³ã¹ããŒã«ãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ãããã°ã·ã³ãã«ã®ãã¹ãŠã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ããã©ã«ãã«ã€ã³ã¹ããŒã«ããå¿ èŠããããŸããã©ã«ããCïŒ\ TempSymbolsãïŒã
2.ãããã°æ å ±ã®ãªããžããªã®æ§æ
Microsoftãããã°ãµãŒããŒsymsrv.dllã䜿çšããŠãã·ã³ãã«ã¹ãã¬ãŒãžãæŽçããŸãã ãããè¡ãã«ã¯ãCïŒ\ Symbolsãªã©ã®ã·ã³ãã«ã¹ãã¢çšã®ãã©ã«ããŒãäœæããŸãã 次ã«ããã¹ãŠã®ã³ã³ãã¥ãŒã¿ãŒãŠãŒã¶ãŒã«å¯ŸããŠèªã¿åãæš©éãèšå®ããå¿ èŠããããŸãã
次ã®ã¹ãããã¯ããããã°ã·ã³ãã«ãã¡ã€ã«ããªããžããªã«è¿œå ããããšã§ãã ãããè¡ãã«ã¯ãDebugging Tools For Windowsã¹ã€ãŒãã®ãsymstore.exeãããã°ã©ã ã䜿çšããŸãã 次ã®ã³ãã³ããå®è¡ããŸãã
symstore add /r /3 /fc:\TempSymbols\*.* /sc:\Symbols /compress
ãã®ã³ãã³ãã¯ããcïŒ\ TempSymbolsããã£ã¬ã¯ããªã®ãã¹ãŠã®ãµããã©ã«ããŒãæ€çŽ¢ãããããããããã°æ å ±ãå«ããã€ããªãã¡ã€ã«ãšãã¡ã€ã«ããCïŒ\ Symbolsããã©ã«ããŒã«ãã3ã¬ãã«ã®ã·ã³ãã«ã¹ãã¬ãŒãžã«ã³ããŒããŸãã ããããã¢ãŒã«ã€ãããã€ã³ããã¯ã¹ãã¡ã€ã«ãäœæããŠã¢ã¯ã»ã¹ãé«éåããã¹ãã¬ãŒãžãå€æŽããããã®ã¢ã¯ã»ã¹ãã©ã³ã¶ã¯ã·ã§ã³ã«é¢ããæ å ±ãä¿åããŸãã
ãã®ã³ãã³ãã®ããŒã®èª¬æïŒ
- add-ã¹ãã¬ãŒãžã«ãã¡ã€ã«ãè¿œå ããŸãã
- / r-ã·ã³ãã«ãã¡ã€ã«ãå«ããã©ã«ããŒãååž°çã«ãã€ãã¹ããŸãã
- / 3-3å±€ã¹ãã¬ãŒãžãç·šæããŸãïŒãã¡ã€ã«ãžã®ã¢ã¯ã»ã¹ãé«éåããããïŒ
- / f [path] -ãªããžããªã«è¿œå ããããã¡ã€ã«ãžã®ãã¹ã
- / s [path] -ãªããžããªãžã®ãã¹ã
- / compress-ã¢ãŒã«ã€ãã¹ãã¬ãŒãžãäœæããŸãïŒãã£ã¹ã¯ã¹ããŒã¹ãç¯çŽããããïŒ
ã³ãã³ãã¯ååã«é·ãå®è¡ããããã®å®è¡çµæã¯ããã©ã«ããŒãCïŒ\ Symbolsãã«ãããã°æ å ±ã®ãªããžããªãŒãäœæããŸãã ãã®æé ã®åŸããã©ã«ããŒãCïŒ\ TempSymbolsããåé€ã§ããŸãã
3. httpãããã³ã«ãä»ãããããã°æ å ±ã®ãªããžããªãžã®ã¢ã¯ã»ã¹ã®çµç¹
ãã®æç¹ã§ãã¹ãã¬ãŒãžã¢ã¯ã»ã¹ãæäŸããããã«ã€ã³ã¿ãŒãããã€ã³ãã©ã¡ãŒã·ã§ã³ãµãŒãã¹ãæ§æããå¿ èŠããããŸãã ãŸããä»®æ³ãã©ã«ããŒãäœæããŸãã
- ãã¹ã¿ãŒãã->ã管çããŒã«ã->ãã€ã³ã¿ãŒãããã€ã³ãã©ã¡ãŒã·ã§ã³ãµãŒãã¹ïŒIISïŒãããŒãžã£ãŒããéããŸãã
- ãWebãµã€ãããã©ã«ããå±éããŸãã
- ãDefault Web SiteãèŠçŽ ã®ã³ã³ããã¹ãã¡ãã¥ãŒã§ããNew-> Virtual Directory ...ããéžæããŸãã
- ãããããŠã£ã³ããŠã§ãã次ãžããã¯ãªãã¯ããŸãã
- ããšã€ãªã¢ã¹ããã£ãŒã«ãã«ãã·ã³ãã«ããšå ¥åããã次ãžããã¿ã³ãã¯ãªãã¯ããŸãã
- ããã¹ããã£ãŒã«ãã«ãCïŒ\ Symbolsããšå ¥åããã次ãžããã¿ã³ãã¯ãªãã¯ããŸãã
- ãã¹ã¯ãªããã®å®è¡ãããã³ãåç §ããã£ãŒã«ãã®ãã§ãã¯ãå€ããŸãã
- [次ãž]ããã³[å®äº]ãã¿ã³ãã¯ãªãã¯ããŸãã
次ã«ãMIMEã¿ã€ããæ§æããŸãã
- ãã·ã³ãã«ãä»®æ³ãã©ã«ãã®ã³ã³ããã¹ãã¡ãã¥ãŒã§ããããããã£ããã³ããéžæããŸãã
- ãHTTPããããŒãã¿ããéžæããŸãã
- ãMIMEã¿ã€ãããã¿ã³ãã¯ãªãã¯ããŸãã
- ã次ãžããã¿ã³ãã¯ãªãã¯ããŸãã
- [æ¡åŒµå]ãã£ãŒã«ãã«ã*ããšå ¥åããŸãã
- ãMIMEã¿ã€ãããã£ãŒã«ãã«ãapplication / octet-streamããšå ¥åããŸãã
- [OK]ãã¿ã³ãã¯ãªãã¯ããŠã[MIMEã¿ã€ã]ãŠã£ã³ããŠãçµäºããŸãã
- [OK]ãã¿ã³ãã¯ãªãã¯ããŠã[ããããã£]ãŠã£ã³ããŠãçµäºããŸãã
4.ã€ã³ã¿ãŒãããçµç±ã§æåãæŽæ°ããããã®ãããã·ãã£ã«ã¿ãŒãã€ã³ã¹ããŒã«ãã
ãããã·ãã£ã«ã¿ãŒã¯ããããã¬ãŒãMicrosoftãããªãã¯ã¹ãã¢ããååŸããããšãããããã°ã·ã³ãã«ãã¡ã€ã«ãåãåãããããã«ãã£ãŠã·ã³ãã«ã¹ãã¢ãæŽæ°ããããã«å¿ èŠã§ãã
Microsoftã®Debugging Tools For Windowsã¹ã€ãŒãã§æäŸããããããã·ãã£ã«ã¿ãŒã¯ISAPIæ¡åŒµæ©èœã§ããããCïŒ\ Program Files \ Debugging Tools For Windows \ symproxyããã£ã¬ã¯ããªã«ãããŸãã
ãããã·ãã£ã«ã¿ãŒãã€ã³ã¹ããŒã«ããŸãã
- ãã¡ã€ã«ãsymproxy.dllãããã³ãsymsrv.dllãããCïŒ\ Program Files \ Debugging Tools For Windows \ symproxyããã£ã¬ã¯ããªãããïŒ WINDIRïŒ \ system32 \ inetsrvããã©ã«ãã«ã³ããŒããŸãã
- 空ã®ãã¡ã€ã«ãïŒ WINDIRïŒ \ system32 \ inetsrv \ symget.yesããäœæããŸãã
- ãã¡ã€ã«ãCïŒ\ Program Files \ Debugging Tools For Windows \ symproxy \ symproxy.regãããããŒã¿ãã¬ãžã¹ããªã«è¿œå ããŸãã
- ã¬ãžã¹ããªãšãã£ã¿ãŒãéããŠãããŒãHKLM /ãœãããŠã§ã¢/ Microsoft / Symbol Server Proxy / Webãã£ã¬ã¯ããª/ã·ã³ãã«ããèŠã€ããŸãã
- ãSymbolPathãã®å€ããCïŒ\ symbols; httpïŒ//msdl.microsoft.com/download/symbolsãã«å€æŽããŸãã
- 次ã«ãã¬ãžã¹ããªããŒãHKLM \ SYSTEM \ CurrentControlSet \ Services \ EventLog \ Application \ SymProxyããäœæãããEventMessageFilterããšããååãšå€ãïŒ WINDIRïŒ \ system32 \ inetsrv \ symproxy.dllããå«ãREG_EXPAND_SZå€ãè¿œå ããŠããããã·ãã£ã«ã¿ãŒãã€ãã³ããœãŒã¹ãšããŠç»é²ããŸãã
ãããã·ãã£ã«ã¿ãŒã§åäœããããã«IISãæ§æããŸãã
- ãã¹ã¿ãŒãã->ã管çããŒã«ã->ãã€ã³ã¿ãŒãããã€ã³ãã©ã¡ãŒã·ã§ã³ãµãŒãã¹ïŒIISïŒãããŒãžã£ãŒããéããŸãã
- ãã¢ããªã±ãŒã·ã§ã³ããŒã«ãé ç®ã®ã³ã³ããã¹ãã¡ãã¥ãŒã§ããæ°èŠã->ãã¢ããªã±ãŒã·ã§ã³ããŒã«ããéžæããŸãã
- [ã¢ããªã±ãŒã·ã§ã³ID]ãã£ãŒã«ãã«ãSymSrvããŒã«ããšå ¥åããŸãã OKãã¯ãªãã¯ããŸãã
- ãSymSrvããŒã«ãèŠçŽ ã®ã³ã³ããã¹ãã¡ãã¥ãŒã§ããããããã£ããéžæããŸãã
- [ID]ã¿ããéžæãã[äºåå®çŸ©]ã©ãžãªãã¿ã³ãéžæããã³ã³ãããã¯ã¹ã§[ãããã¯ãŒã¯ãµãŒãã¹]ãéžæããŠ[OK]ãæŒããŸãã
- ãWebãµã€ã->ããã©ã«ãWebãµã€ãããã©ã³ããå±éããŸãã
- ãã·ã³ãã«ãèŠçŽ ã®ã³ã³ããã¹ãã¡ãã¥ãŒã§ããããããã£ããéžæããŸãã
- [ä»®æ³ãã£ã¬ã¯ããª]ã¿ãã§ã[äœæ]ãã¿ã³ãã¯ãªãã¯ããŸãã
- [ã¢ããªã±ãŒã·ã§ã³ããŒã«]ã³ã³ãããã¯ã¹ã§[SymSrvããŒã«]ãéžæãã[OK]ãã¯ãªãã¯ããŸãã
- [æ¢å®ã®Webãµã€ã]ã³ã³ããã¹ãã¡ãã¥ãŒã§ã[ããããã£]ãéžæããŸãã
- [ISAPIãã£ã«ã¿]ã¿ããéžæãã[è¿œå ]ãã¿ã³ãã¯ãªãã¯ããŸãã
- ããã£ã«ã¿ãŒåããã£ãŒã«ãã«ãSymProxyãããå®è¡å¯èœããã£ãŒã«ãã«ãïŒ WINDIRïŒ \ system32 \ inetsrv \ symproxy.dllããšå ¥åããŸãã
- [OK]ãã¯ãªãã¯ããŠã[ãã£ã«ã¿ãŒã®ããããã£]ãŠã£ã³ããŠãéããŸãã
- [OK]ãã¯ãªãã¯ããŠã[æ¢å®ã®Webãµã€ãã®ããããã£]ãŠã£ã³ããŠãéããŸãã
ãiisreset.exeããã¡ã€ã«ãå®è¡ããŠãæ°ããèšå®ã§IISãåèµ·åããŸãã
5. symproxy.dllã®ãããã·ãµãŒããŒèšå®ã®æ§æ
Windowsçšãããã°ããŒã«ã«ã¯ããsymproxy.dllããã€ã³ã¿ãŒãããïŒãããã·ãµãŒããŒãªãïŒã§çŽæ¥åäœããå Žåããsymproxy.dllããå§çž®ãããã°ã·ã³ãã«ãã¡ã€ã«ãåä¿¡ããåŒã³åºããMicrosoft Webãµã€ãã«ãªãã€ã¬ã¯ãããªããšããæ¬ ç¹ããããŸãã ãã®æ¬ é¥ã解æ¶ããã«ã¯ãããŒã«ã«ãããã·ãµãŒããŒãã€ã³ã¹ããŒã«ãããproxycfg.exeããŠãŒãã£ãªãã£ã䜿çšããŠã·ã¹ãã ããããã·ãµãŒããŒãšé£æºããããã«æ§æããå¿ èŠããããŸãã
6.ãããã°æ å ±ãµãŒããŒãšé£æºããããã«ã¯ã©ã€ã¢ã³ãã³ã³ãã¥ãŒã¿ãŒãæ§æãã
åã¯ã©ã€ã¢ã³ãã³ã³ãã¥ãŒã¿ãŒïŒéçºè ã³ã³ãã¥ãŒã¿ãŒïŒã§ããCïŒ\ LocalSymbolsããªã©ãæåããã£ãã·ã¥ããããã®ãã©ã«ããŒãäœæããŸãã Windowsãã£ã¹ããªãã¥ãŒã·ã§ã³ã®ãããã°ããŒã«ãã€ã³ã¹ããŒã«ããç°å¢å€æ°ãäœæããŸãã
_NT_SYMBOL_PATH=srv*[local_repository]*http://[symbol_server_ip]/symbols
_NT_IMAGE_PATH=srv*[local_repository]*http://[symbol_server_ip]/symbols
ã©ãã§ïŒ
- [local_repository]ã¯ããŒã«ã«æåãã£ãã·ã¥ã§ãïŒäŸïŒãCïŒ\ SymbolsãïŒã
- [symbol_server_ip] -äŒæ¥ãããã°æ å ±ãµãŒããŒã®IPã¢ãã¬ã¹ãŸãã¯ãã¡ã€ã³åã
æåã®å€æ°ã¯ãããã°ã·ã³ãã«ã®æ€çŽ¢ãã¹ãæ åœãã2çªç®ã¯ãããã®ã·ã³ãã«ã«äžèŽãããã€ããªãæ€çŽ¢ããŸãïŒã¯ã©ãã·ã¥ãã³ãã®è§£ææãã€ãŸãã¯ã©ãã·ã¥ããããã°ã©ã ã®ãã€ããªã«çŽæ¥ã¢ã¯ã»ã¹ã§ããªãå Žåã«å¿ èŠïŒã
ãŸãšã
ããã§ãçµæã説æããŸãã ããã§ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ãããã°ã·ã³ãã«ãšäžéšã®Microsoftã©ã€ãã©ãªãšè£œåãé 眮ããããµãŒããŒãã§ããŸããã åæã«ããœãããŠã§ã¢ã®æ°ããããŒãžã§ã³ã®ãã£ã©ã¯ã¿ãŒãåä¿¡ããããã«ãµãŒããŒã«ã¢ããŒã«ãåä¿¡ããããšããã®ãªã¯ãšã¹ãã¯ãã€ã¯ããœããã®Webãµã€ãã«ãªãã€ã¬ã¯ãããããã£ã©ã¯ã¿ãŒã¯ããããããŠã³ããŒãããããµãŒããŒã«èœã¡ãŸãã éçºè ã®ã³ââã³ãã¥ãŒã¿ãŒã«ã¯ããããã¬ãŒïŒVisual StudioãWinDbgãªã©ïŒã®èŠæ±ã«å¿ããŠãã£ã©ã¯ã¿ãŒãµãŒããŒããããŠã³ããŒãããããã£ã©ã¯ã¿ãŒã®ããŒã«ã«ãªããžããªããããŸãã ãã£ã©ã¯ã¿ãŒãµãŒããŒã®äœæ¥ãå®äºããã«ã¯ããã«ãã·ã¹ãã ã«è¿œå ããã ãã§ãã
- ãããã°æ å ±ãã¡ã€ã«ïŒ* .pdbïŒã®äœæã®ã»ããã¢ãã
- symstoreãåŒã³åºããŠãã³ã³ããŒãã³ãããã³ã³ã³ããŒãã³ãèªäœã«é¢ãããããã°æ å ±ããµãŒããŒã«ååŸããŸãã
ãããã«
ç§ãèšã£ãããã«ããã®åœä»€ã¯2ã3幎åã«æžãããã®ã§ãããã«Win2003ãæèŒããã³ã³ãã¥ãŒã¿ãŒããããŸããWin2008ãšIISã®ææ°ããŒãžã§ã³ã«é¡æšããŠã·ã³ãã«ãµãŒããŒãå±éããããšã¯é£ãããªããšæããŸãã ãŸããèšå®ã®ã¹ã¯ãªãŒã³ã·ã§ãããæ®åœ±ã§ããä»®æ³ãã·ã³ã¯ãããŸããã§ããã ãããã説æã¯éåžžã«è©³çŽ°ãªã®ã§ãç解ã§ãããšæããŸãã
ããããããã©ã°ã©ã5ã§èª¬æããåé¡ã¯ãã¯ãé¢ä¿ããªãã®ã§ããã§ãã¯ããŸããã§ããã
ãããã°æ å ±ãµãŒããŒã®æäœã«é¢ãã詳现æ å ±ã¯ããã«ããã¡ã€ã«ã«ãããŸãããããã°ããŒã«Windowsã®å Žåãã·ãŒããšããŠãããã°æ å ±ãµãŒããŒããœãŒã¹ã¹ãã¬ãŒãžãµãŒããŒã«ãã€ã³ãã§ããŸããã¯ã©ãã·ã¥ãã³ãã解æãããšãããã°ã©ã ã¯ã©ãã·ã¥ã¹ã¿ãã¯ã ãã§ãªãããããŠãã¢ã»ã³ããªæã«æå¹ãªãœãŒã¹å ã®å Žæã