Я только что столкнулся с той же проблемой, заставляя Crystal Reports 2010 (13.0.4) работать на Azure. Я последовал совету BritishDeveloper и некоторых других источников. Мой метод отличается лишь незначительно тем, что я использовал хранилище BLOB-объектов Azure для хранения среды выполнения Crystal, что делает публикацию проекта намного быстрее, чем при его включении в ваш проект.
Вот как я работал с отчетами о кристаллах:
1) Настройте новую службу хранения больших двоичных объектов в Портал Azure
2) Загрузить установщик Crystal в это хранилище BLOB-объектов
Использование бесплатного инструмента CloudXplorer загрузка CRRuntime_64bit_13_9_4.msi в контейнер с именем crystalinstaller (не забудьте разархивировать перед загрузкой).
3) В Visual Studio создайте определение сценария запуска в вашем проекте Azure ServiceDefinition.csdef:
<ServiceDefinition...>
<WebRole...>
<Startup>
<Task commandLine="AzureStartUp.cmd" executionContext="elevated" taskType="background" />
</Startup>
</WebRole>
</ServiceDefinition>
4) Сохраните следующий сценарий запуска в корне вашего веб-проекта с «build action» none и «copy to output», установленным в всегда . Урок, извлеченный здесь: подход / ситероот не всегда на E: диск
@ECHO off
@REM Setting up Azure Stroage Credentials
set azurestoragename=<name>
set azurestoragekey=<key>
set storagecontainername=crystalinstaller
@REM Setting up Azure Drive
@REM (sometimes E:, sometimes F: maybe one day G:?)
set drive=%cd:~0,3%
@REM Download Crystal Runtime 13.0.4
@REM from blob storage account
set filename=CRRuntime_64bit_13_0_4.msi
AzureBlobDownloader.exe "%azurestoragename%" "%azurestoragekey%" "%storagecontainername%" "%filename%"
@REM Install Crystal Runtime 13.0.4
msiexec.exe /I CRRuntime_64bit_13_0_4.msi /qn
@REM Copy Crystal Reports Viewer Files
robocopy D:\inetpub\wwwroot %drive%sitesroot\0 /S
robocopy D:\inetpub\wwwroot %drive%approot /S
5) Загрузите инструмент командной строки, который можно загрузить из хранилища BLOB-объектов, на службу Azure VM
Я использовал packagedownloader.exe из Windows Azure Tomcat Solution , но, возможно, есть и другие, или вы можете легко свернуть свои собственные. Я переименовал это в AzureBlobDownloader.exe и скопировал вместе с включенным Microsoft.WindowsAzure.StorageClient.dll в корневой каталог моего веб-проекта с «действием сборки» none и «copy to output», установленным в всегда .
Если у вас все еще возникают проблемы, попробуйте подключить удаленный рабочий стол к своему экземпляру и использовать инструмент, подобный DebugView , чтобы отслеживать происходящее.