|
опции построения решения
|
|||
---|---|---|---|
#18+
Почему когда я в среде Visual Studio даю команду построение -> построить решение, то файлы появляются и в папке bin, и в папке obj? Можно как-то сделать так, чтобы решение появлялось только в bin? В свойствах у меня стоит Активная конфигурация -> Release|Any CPU, и путь вывода bin/Release. И второй вопрос. Когда компилирую решение в виде файла библиотеки .dll, то в этой же папке появляется файл Source Browser Database. Для чего этот файл нужен? Можно сделать чтобы он не появлялся? (возможно это глупый вопрос). ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 18:41 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
Изучающий си решеткаПочему когда я в среде Visual Studio даю команду построение -> построить решение, то файлы появляются и в папке bin, и в папке obj? Потому что разработчики компиляторов/среды решили что так нужно. Изучающий си решеткаМожно как-то сделать так, чтобы решение появлялось только в bin? Нет. Просто не обращаай внимание на папку obj и всё. Изучающий си решеткаКогда компилирую решение в виде файла библиотеки .dll, то в этой же папке появляется файл Source Browser Database. Для чего этот файл нужен? Может Program Debug Database (*.pdb)? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 19:19 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
bazile, да, расширение .pdb но называется Source Browser Database (.pdb). Как понимаю он тоже встроенный и от него не избавишься. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 19:45 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
Изучающий си решетка, pdb - файл с содержванием символов отладки. Создается при компиляции в Debug mode. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 20:01 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
Изучающий си решетка, в pdb файле хранится информация для отладчика, но он может использоваться и во время исполнения. Например, при построении трассировки стека для исключения. Его можно убрать, но лучше не надо. Если он тебе не нужен - игнорируй его. Если понадобится, то он уже есть. Изучающий си решеткарасширение .pdb но называется Source Browser Database Правильное название все-таки "Program Debug Database". У тебя видиио установлено какое-то не Microsoft приложение которое использует файлы с расширением pdb для других целей. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 20:01 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
AxeleronСоздается при компиляции в Debug mode. В Release он тоже создается, но содержит меньше информации. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 20:02 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
bazile, вопрос про свою библиотеку. Чтобы не таскать файлы исходного кода из проекта в проект, я решил сделать один проект .dll с общими классами и добавлять в References каждого проекта этот один dll. Проблема в том, что проекты то видят его, то нет. Или видят, решение компилируют, а при запуске выдается сообщение что файл не найден. Как такое может быть? Один раз проект потребовал строгую подпись. Пробовал устанавливать свойство "Копировать локально" в False, тоже не помогает. В чем может быть косяк? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 20:26 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
Изучающий си решетка, если проект библиотеки и проекты использующие её находятся в одном солюшене, то убедись что ты сделал project reference на библиотеку, а не указал явно файл из папки debug или release. Если проекты находятся в разных солюшенах, то reference на dll файл это единственный вариант и он должен работать без проблем при условии что dll файл на месте. Изучающий си решеткаОдин раз проект потребовал строгую подпись. Скорее всего ты компилировал сборку со строгим именем и сделал ссылку на сборку без него. Из соображений безопасности это не разрешено. Сборка со строгим именем может ссылаться только на сборки со строгим именем. Изучающий си решеткаПробовал устанавливать свойство "Копировать локально" в False, тоже не помогает. Верни обратно в true. У тебя похоже сборка без строго имени и она должна лежать рядом с exe чтобы приложение могло найти её и загрузить. Copy Local = true это обеспечит. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 20:39 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
bazile, на одном проекте работает, на другом такая ошибка: "Необработанное исключение типа "System.InvalidOperationException" в mscorlib.dll Дополнительные сведения: Сбой при сравнении двух элементов массива." Что это может быть? Никогда такое не встречал. Самые распространенные мои ошибки это "ссылка не указывает на экземпляр" и "выход за границы массива", ну или "NaN" на худой конец. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 22:27 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
Коррекция к последнему моему посту: все нормально, работает, ошибка с mscorlib это я забыл поставить для одного класса интерфейс : IComparable, это к моей библиотеке не относится. Осталось только одно неудобство, проекты почему-то не хотят работать с моей библиотекой если она стоит в списке ссылок со свойством CopyLocal = False. Может я не хочу копировать библиотеку в каталоги проектов, зачем лишние копии плодить, диск засорять. Хотелось бы, чтобы папки проектов содержали по-минимуму всякой шелухи, только исходный код и исполняемый файл. Когда долго работаю над несколькими проектами, то через каждые день-два скидываю на внешний носитель и почтовые ящики эти промежуточные варианты проектов, получается история разработки, если нужно вернуться к пред-предыдущим вариантам. Удобно если сразу взял папки и скопировал, и неприятно что вместе с "соком" идет куча одинакового ненужного балласта. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2014, 22:55 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
Изучающий си решетка, копирование библиотек в папку рядом с exe необходимо потому что именно так работает .NET. Если тебя это не устраиваает, то подписывыай сборки строгим именем и добавляй их в GAC. Тогда они будут в одном месте, VS не будет их копировать, но надо будет следить за актуальностью версии в GAC и также, возможно, подписывать другие сборки. Если тебе так жалко места, то выполняй команду Build -> Clean перед созданием резервных копий или просто удаляй папки bin/obj. VS создаст их заново перед компиляцией. Изучающий си решеткаКогда долго работаю над несколькими проектами, то через каждые день-два скидываю на внешний носитель и почтовые ящики эти промежуточные варианты проектов, получается история разработки, если нужно вернуться к пред-предыдущим вариантам. Для этого лучше использовать систему контроля версий. Даже если ты работаешь один. В интернете есть бесплатные сервисы для таких целей. Например, bitbucket.org . ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2014, 01:25 |
|
опции построения решения
|
|||
---|---|---|---|
#18+
все, разобрался в чем дело. Была просто нестыковка платформ х86 и х64, а CAD-программа, для которой предназначены плагины из моего проекта, вместо того чтобы сказать о несоответствии сборок выдавала сообщение что "файл не удалось загрузить. файл не найден". Идея с Build->Clear действительно хорошая, почему-то раньше не догадывался. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2014, 18:32 |
|
|
start [/forum/topic.php?fid=20&msg=38836388&tid=1402107]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 338ms |
total: | 462ms |
0 / 0 |