У меня при подключении к internet по dialup'у при запуске С++-приложения в VS
2005 среда начинает грузить символы (Symbols). При этом мало того, что при
медленном коннекте всё оч.долго грузится, так ведь складирует она их в
Debug-каталог КАЖДОГО приложения.
Можно как-то выключить эту замечательную фишку?
Удачи в бою!.. ;)
Damir.
30 Jan 07 23:10, you wrote to All:
DT> У меня при подключении к internet по dialup'у при запуске
DT> С++-приложения в VS 2005 среда начинает грузить символы (Symbols). При
DT> этом мало того, что при медленном коннекте всё оч.долго грузится, так
DT> ведь складирует она их в Debug-каталог КАЖДОГО приложения.
Странно, а какие символы она грузит для _каждого_ приложения? Грузить с сервера
она должна только те символы, которых нет на локальной машине, а уж где ей
взять на сервере символы _твоих_ приложений?
Вообще, там в настройках отладчика задается каталог "зеркала", в который будут
складываться скачанные символы. Hо он также задается в переменной
_NT_SYMBOL_PATH, которая у тебя, судя по всему, определена, иначе бы студия
просто не знала, куда лезть за символами.
DT> Можно как-то выключить эту замечательную фишку?
Можно запретить студии доступ к инету посредством файрвола, можно убрать
переменную _NT_SYMBOL_PATH :)
Всего доброго!
Евгений Музыченко
eu-...@muzy-chen-ko.net (минусы убрать)
Первое и главное - совет помог - большое спасибо! А теперь немного
подробностей...
DT>> У меня при подключении к internet по dialup'у при запуске
DT>> С++-приложения в VS 2005 среда начинает грузить символы (Symbols). При
DT>> этом мало того, что при медленном коннекте всё оч.долго грузится, так
DT>> ведь складирует она их в Debug-каталог КАЖДОГО приложения.
EM> Странно, а какие символы она грузит для _каждого_ приложения?
Всякие там mfc80ud.pdb и т.д. и т.п.
Странно то, что она всё это складывала в каталоге Debug _каждого_ приложения.
А не где-то централизовано (например, рядом с соответствующей DLL).
После установки SP1 это полечилось. Hо всё равно ждать - не хотелось.
EM> Грузить с сервера она должна только те символы, которых нет на
EM> локальной машине, а уж где ей взять на сервере символы _твоих_
EM> приложений?
У меня на локальной машине нет символов MFC и т.д.
EM> Вообще, там в настройках отладчика задается каталог "зеркала", в
EM> который будут складываться скачанные символы. Hо он также задается в
EM> переменной _NT_SYMBOL_PATH, которая у тебя, судя по всему,
EM> определена, иначе бы студия просто не знала, куда лезть за символами.
Вот. Опцию я через Google нашёл. Hо увидел что там пусто. Про эту переменную
ничего не узнал ни из Google, ни из MSDN.
Каков алгоритм поиска такого чуда? Как надо было копать?
DT>> Можно как-то выключить эту замечательную фишку?
EM> Можно запретить студии доступ к инету посредством файрвола,
Жестоко. Сколько файрволов не ставил - ни один не прижился. Посоветуешь по
пути? Виндовый.
EM> можно убрать переменную _NT_SYMBOL_PATH :)
Убрал. Ура! Помогло!
Странно только, что для того, чтобы вижалка про неё забыла пришлось перегрузить
винду. Проверял Far'ом - в команде SET переменная была, а после удаления - не
стало. Hо перезапуск вижалки не помог. Только перезагруза. Странно.
Ещё раз большое спасибо!
01 Feb 07 00:22, you wrote to me:
EM>> также задается в переменной _NT_SYMBOL_PATH
DT> Вот. Опцию я через Google нашёл. Hо увидел что там пусто. Про эту
DT> переменную ничего не узнал ни из Google, ни из MSDN.
DT> Каков алгоритм поиска такого чуда? Как надо было копать?
У MS чем дальше, чем непонятнее, куда копать. Та MSDN, что идет с VS 2005 -
покоцаный до крайности вариант полной Library. Там много чего нет. А технология
хранения символов и взаимодействия с сервером подробно описана в хелпах от
WinDbg.
DT> Сколько файрволов не ставил - ни один не прижился. Посоветуешь по
DT> пути? Виндовый.
Я держу TDI_FW - он простой, но управляется текстовым конфигом, гуевой морды у
него нет.
DT> Проверял Far'ом - в команде SET переменная была, а после удаления - не
DT> стало. Hо перезапуск вижалки не помог. Только перезагруза. Странно.
Возможно, студия запрашивает переменные через сервисы .NET, которые, раз
запустившись, висят до перезагрузки. Можно попробовать перезапустить.