У меня есть старый проект VB.NET 2008, в котором используется Crystal Reports. Для доступа к файлам .rpt я использовал сборку Microsoft.InteropFormTools. Это работало хорошо в течение ряда лет. Это позволяет пользователю указать, сколько составляет параметры для отчетов в Crystal Reports, а затем нажать кнопку и распечатать отчет. (Пользователь не заинтересован в предварительном просмотре отчета, поэтому он печатает прямо на принтере, используя Crystal.) Единственная проблема, которую я никогда не мог выяснить, заключается в том, что иногда (как и при каких обстоятельствах я надеваю не знаю, потому что я могу надежно воспроизвести ошибку) загрузка Crystal Report приведет к появлению флага ошибки. Далее Crystal будет настаивать на том, чтобы пользователь вводил параметры в отчет, прежде чем он их предварительно просмотрит. Конечно, пользователи не знают, что происходит, поэтому то, что мы сделали в прошлом, это просто заставил пользователя запустить его заново, и Crystal обычно доволен и отправляет отчет на принтер.
Тем не менее, у нас есть новые пользователи, готовые сделать это, и они не так просты. Когда я написал это приложение 4 года назад, я позволил процессору быть «любым процессором». Мне интересно, может ли это быть причиной моих проблем с этими отчетами Crystal, которые не выходят. Итак, я вошел в проект и изменил его с «Любой процессор» на «x86», что действительно более уместно, тем более что наша старая версия Crystal является 32-битной. Однако теперь, когда я это сделал, у меня появилось новое сообщение об ошибке. Visual Studio 2008 говорит мне: «Система не может найти указанную ссылку». В этом случае отсутствующей ссылкой является Microsoft.InteropFormTools. Никаких других изменений в этом приложении за 3 года не произошло, кроме того, что я изменил конфигурацию проекта с «Любой процессор» на «x86». Может ли это быть причиной того, что он не может найти путь к Microsoft.InteropFormTools?