Зачем VS2005 искать файл, который должен генерировать?

Я работаю над приложением PocketPC в Visual Studio 2005. Решение создавалось нормально, но внезапно сломалось. Первая ошибка (предположим, что это FooPDA):

«Невозможно найти исходный файл« C: \ FooPDA \ obj \ Release \ FooPDA.exe »для файла« FooPDA.exe », расположенного в«% InstallDir% », файл может отсутствовать или заблокирован».

Эта ошибка меня сбивает с толку. Он ищет файл, который должен быть сгенерирован. Кто-нибудь знает, что здесь может быть не так?


Редактировать: проект отлично строится прямо из системы контроля версий, Я просто меняю иконку на проекте, и начинает выдавать эту загадочную ошибку.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
0
3 550
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

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

Можете ли вы скомпилировать, не запуская проект, или вы получаете ту же ошибку, просто пытаясь скомпилировать?

Если можете, я бы попытался исправить любые ошибки компиляции и пересобрать.

Закройте Visual Studio. Очистите свой раствор. Создайте свое решение снова.

Сообщение появляется снова?

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

Я проверю это для тебя, когда вернусь домой

Patrick Desjardins 15.11.2008 01:10

"Unable to find source file 'C:\FooPDA\obj\Release\FooPDA.exe'

Он пытается создать файл C: \ FooPDA \ мусорное ведро \ Release \ FooPDA.exe.

C: \ FooPDA \ объект \ Release \ FooPDA.exe - это один файл (хорошо, почти единственный), который он использует для его создания (в основном путем его копирования).

Похоже, что по какой-то другой причине сборка завершилась неудачно (синтаксическая ошибка и т. д.), Но в некоторой степени остальная часть процесса сборки не поняла и продолжила работу.

Ответ принят как подходящий

Отображение% InstallDir% в сообщении об ошибке может быть подсказкой. Есть ли в вашем решении проект установки и развертывания? Будет ли он собран до вашего проекта FooPDA? Видеть это в объект тоже подозрительно.


OP Edit: Вы были на правильном пути, поэтому я доверяю вам ответ. Оказывается, когда вы выполняете перестройку, компилятор Visual Studio 2005 довольно глуп в том смысле, что не останавливается, когда попадает в проект, который не может скомпилировать. Он просто продолжает компилировать и выдавать ошибки.

Это конкретное решение содержит три проекта. Мы назовем их FooPDA, PDAComponents и Setup. Я изменил значок в проекте FooPDA, и решение больше не компилировалось. Ошибка, на которой я сосредоточился, не имела ничего общего с реальной проблемой. Мне следовало сосредоточиться на ошибке, которую я увидел при первоначальной сборке, а именно:

CVTRES: фатальная ошибка CVT1103: невозможно прочитать файл

Я в основном сдул это и сразу сделал перестройку. Именно тогда ошибка, которую я опубликовал, оказалась в верхней части списка ошибок, и я был зациклен на ней. Я не должен был быть. Первоначально опубликованная мной ошибка была связана с тем, что FooPDA не компилировался, поэтому FooPDA.exe был недоступен, когда пришло время компилировать проект установки. Причина, по которой FooPDA не удалось скомпилировать, когда я изменил значок, была связана с тем, что файл .ico, который я пытался добавить, содержал несовместимые размеры значков и / или глубину цвета. Очевидно, компактная платформа (или целевая платформа PocketPC 2003?) Понимает только некоторые из них. Файл .ico, который я пытался добавить, имел всевозможные размеры и глубины цвета, встроенные в него (вплоть до 256x256 @ 32 бит). Я посмотрел на файл .ico, который изначально был там, и в нем было всего два значка 48x48. Один 24-битный цвет и один 8-битный. Я открыл свой новый файл .ico в редакторе значков и изменил его, чтобы он содержал тот же размер и глубину цвета, что и оригинал, и все снова было в порядке с миром. Решение теперь компилируется с новым значком, без проблем.

С одной стороны, я чувствую себя глупо из-за того, что не понимаю этого (я наконец спросил коллегу, который сталкивался с этим раньше). С другой стороны, что, черт возьми, «CVTRES: фатальная ошибка CVT1103: невозможно прочитать файл», скажите мне? Ничего такого! Что не так с "Ошибка: несовместимый значок"?

Просто столкнулся с этой же проблемой; Спасибо за ответ. Я просто удалил 32-битные цвета (и использовал 24-битные) и значок размером 256x256, после чего сборка прошла успешно. Абсолютно бесполезное сообщение об ошибке.

djdd87 07.05.2012 18:58

32-битный цвет и 8-битный альфа-канал - это нормально, проблема в размере. я не уверен, какой максимальный размер. Я уменьшил свой с 256x256 до 48x48, и загадочная ошибка волшебным образом исчезла.

nitewulf50 25.02.2014 01:11

Другие вопросы по теме