Visual Studio компилируется, но исполняемый файл отсутствует - PullRequest
10 голосов
/ 12 июля 2010

Исходный код, который прекрасно компилируется в окружениях других людей, не будет корректно работать в моей среде.Когда я делаю перестройку, происходит компиляция, но когда Visual Studio переходит в exe из / obj / debug / {solution} в / debug / {solution}, она не может найти exe в / obj / debug / {solution}.Чтобы сделать это еще более безумным, даже после того, как я переустановил Visual Studio, это не работает.На других людях это работает.Обратите внимание, что это проект для Windows Mobile 6, Compact Framework 3.5, проект Visual C ++.

РЕДАКТИРОВАТЬ: используется Visual Studio 2008.

РЕДАКТИРОВАТЬ 2: После просмотра журналов снова прийти кузнайте, что он говорит, что он компилируется, но на самом деле он не компилируется.Достаточно интересно, что он не выдает никаких ошибок, пока не попытается связать код.Когда это идет, чтобы связать объектные файлы, они не там, и это терпит неудачу.

Ответы [ 10 ]

8 голосов
/ 17 декабря 2012

У меня есть две папки выпуска: одна в папке решения и одна в папке проекта. Первый содержит файл .exe, второй - нет.

5 голосов
/ 13 июля 2010

На странице свойств решения убедитесь, что путь, по которому вы ожидаете получить exe-файл, совпадает с тем, который указан в Linker -> Выходной файл.

Еще одна очевидная ошибка: проверьте, какую конфигурацию сборкистроят.Возможно, вы делаете сборку релиза и ожидаете отладочный исполняемый файл :) Я делал это несколько раз.

3 голосов
/ 13 июля 2010

Может быть, VS создает исполняемый файл, и, прежде чем попытаться переместить его в конечный пункт назначения, ваш антивирусный сканер захватывает его и удаляет или перемещает в место сохранения.

2 голосов
/ 13 марта 2015

Я просто хотел присоединиться и спросить: вы искали имя файла * .exe из каталогов выше? В моем случае я обнаружил, что он записывает в каталог прямо над подкаталогом / release. Не уверен, как я пропустил эту деталь, но я сделал! Я предполагаю, что это никогда не происходило со мной раньше, потому что я видел, как buildlog.htm записывается в подкаталог / release, и само существование самого каталога. В моем случае это были компиляция, компоновка и т. Д. Я просто не смог увидеть * .exe в этом подкаталоге / release.

1 голос
/ 13 июля 2010

Если точно такое же решение работает на других машинах, то это проблема окружающей среды, и никакое рассмотрение проекта, компоновщика и т. Д. Не решит эту проблему. Чем отличается окружающая среда? Применяются ли те же пакеты обновления и QFE не только для Studio, но и для ОС? Есть ли разница в процессорах (64/32-битных)? Ваши разрешения одинаковы? У вас установлены те же SDK?

Я бы согласился с Шахи, что просто попытка создать приложение "hello world" для того же SDK и посмотреть, будет ли оно скомпилировано, является ценной информацией.

0 голосов
/ 15 мая 2019

Я обнаружил, что это случайно для меня сейчас VS2016.Моя работа заключалась в том, чтобы просто создать другой проект и скопировать содержимое из него без .exe в новый.По какой-то причине новый обычно имеет надлежащие .exe и необходимое местоположение.Хотя это не полное решение, по крайней мере, пока оно работает для меня.

0 голосов
/ 25 мая 2018

У меня была точно такая же проблема. Просто закройте Visual Studio и снова откройте его (в основном перезапустите), и оно должно работать.

0 голосов
/ 21 марта 2017

Насколько я могу судить, перед сборкой нужно "Сохранить все".

0 голосов
/ 13 июля 2010

Возможно, у вас нет разрешения на запись в выходную папку?Если вы работаете в Vista / 7, ваша Visual Studio работает с повышенными правами?

0 голосов
/ 13 июля 2010

Если вы создаете новый проект WM "hello world", он работает?

Если это так, вы можете сравнить файлы решения, чтобы проверить различия, которые могут вызвать это.

...