У меня есть действительно большой проект, который я сделал для себя, и недавно клиент попросил его собственную версию с некоторыми изменениями. Название проекта было довольно глупым, и моему клиенту нужен исходный код, поэтому я решил, что будет лучше, если я переименую все свои файлы из
sillyname.h
sillyname.cpp
sillyname.dsp
так далее.. К сожалению, после того, как я снова все сложил, я не вижу способа изменить само имя проекта. Плюс теперь я получаю эту ошибку при компиляции.
main.obj : error LNK2001: unresolved external symbol __imp__InitCommonControls@0
Debug/New_Name_Thats_not_so_silly.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
Должен быть более простой способ все это изменить, верно?
Этот комментарий является ответом на вопрос "где находится обозреватель решений?" Вот несколько изображений, где это находится: images.google.com/…
Если только отладочная версия плохая, то пробовали ЧИСТУ, потом пересборку? еще одна идея. извиняюсь, если вы уже пробовали это. :)





Вы можете просто переименовать файл .vcproj или .dsp, а затем либо создать новую рабочую область (sln dsw) и включить переименованный проект, либо просто изменить имя внутри файла sln (это просто xml). Я не могу вспомнить формат файла. старое рабочее пространство, но все еще текст.
Вы можете вручную переименовать и повторно включить все .cpp или отредактировать файл проекта и переименовать их там.
извините, я не знаю инструмента рефакторинга, который сделает все это, но, вероятно, он есть.
Вот Шаг за шагом в блоге Стива Эндрюса (он работает над Visual Studio в Microsoft)
"Когда вы переименовываете проект, скорее всего, вы захотите переименовать выходную сборку и / или корневое пространство имен для проекта. Для этого щелкните правой кнопкой мыши узел проекта и выберите" Свойства ". Вы также можете дважды щелкнуть значок Узел «Свойства» (C#) или «Мой проект» (VB) ». Где находится обозреватель решений?
Этот комментарий является ответом на вопрос "где находится обозреватель решений?" возможно, поиск картинок в Google покажет какой-нибудь полезный снимок экрана, который легко узнать: images.google.com/…
Если его еще нет на экране (выглядит как ссылка на que), попробуйте пункт меню «Вид | Обозреватель решений» ИЛИ введите Ctrl + Alt + L
Я не проверял это, но делал это несколько раз, и если мне не изменяет память, вы действительно можете использовать функцию поиска и замены в VS2005, чтобы переименовать все экземпляры строки «X» в « Y "в любом типе файла. Затем вам нужно закрыть решение и изменить имя (а) файла проекта (и любого другого файла с тем же именем независимо от расширения).
Очевидно, после этого вам нужно будет выполнить полную перестройку.
Собственно именно этим я и занимался изначально. Хуже всего то, что я только что нашел инструмент, который делает это, но при компиляции все еще получаю ту же ошибку .. grr
Я предполагаю, что в дополнение к переименованному набору файлов вы также сохраняете полный «параллельный» набор исходных файлов в каком-то другом каталоге, я прав?
Предполагая, что у вас есть обе версии, я бы сделал следующее:
Получите инструмент сравнения файлов, например Вне всякого сравнения или DiffMerge, и сравните старый файл SLN и новый файл SLN бок о бок. Также сделайте это для каждого файла «proj» и любых других файлов типа «config».
Эти файлы можно редактировать вручную. Обычно анализ различий между двумя копиями помогает понять, что вам следует делать, чтобы вторая работала.
В любом случае вы можете начать возиться с переименованным проектом вручную, учитывая, что он уже не работает. Вы не можете сделать это намного хуже. И: вы можете узнать несколько полезных трюков о структуре XML этих файлов.
Даже если вы делаете небольшие ошибки при настройке этих файлов вручную, я неоднократно был очень впечатлен тем, как Visual Studio справляется с этим. Visual Studio обычно сообщает вам, где именно вы ошиблись.
Мне тоже всегда неприятно делать это вручную.
Итак, я попробовал некоторые инструменты, доступные через googling - два не работали (VS C++ здесь), не знаю, если они более полезны для C#.
Мне понравился следующий инструмент: я использовал пробную версию, но заплачу за нее 39, - баксов. Для меня это того стоит. Он также имеет надстройку VS. VS 2013 не поддерживался напрямую, по крайней мере, не упоминался, но когда я посмотрел: http://www.kinook.com/CopyWiz
Переименование на месте не работало (ошибка доступа), но «переименование во время копирования» работало нормально.
Но мне действительно интересно, так ли это сложно, как утверждают некоторые программисты. Для большинства частей переименование файлов и поиск и замена всех вхождений во всех текстовых файлах в каталоге проекта должны быть довольно простым и рабочим подходом. Может быть, кто-то сможет продолжить то, что будет так сложно.
Рациональная часть моего мозга запрещает сновидящей части программировать собственный инструмент - мне повезло! :-)
Хорошо. На самом деле компилируется нормально, только версия отладки не ... Странно.