Как обьдинить *.fr3 в 1.dll и работать с ним

отредактировано 10:44 Раздел: FastReport 4.0
Проблема понятна но как решить, может есть готовые пути решения у кого-то?
Если есть один два файла отчета, то еще можно как-то проверить их наличие, а если их десятки то хочется их кудато упаковать.
Да хоть и в exe запрятать. Нечего пользователю там менять.
Нуждаюсь в помощи как это осуществить.

Комментарии

  • Lizard~Lizard~ Тольятти
    отредактировано 10:44
    o_ly написал: »
    Проблема понятна но как решить, может есть готовые пути решения у кого-то?
    Если есть один два файла отчета, то еще можно как-то проверить их наличие, а если их десятки то хочется их кудато упаковать.
    Да хоть и в exe запрятать. Нечего пользователю там менять.
    Нуждаюсь в помощи как это осуществить.

    В ресурсы можно откомпилить. И грузить оттуда. Хотя, на мой взгляд, гораздо удобней хранить отдельно.
  • отредактировано October 2009
    LizarD написал: »
    В ресурсы можно откомпилить. И грузить оттуда. Хотя, на мой взгляд, гораздо удобней хранить отдельно.

    Если можно как то пример привести? Вообщем как из ресурсов доставать нужный файл, А то без примера не разберусь...
    Подгрузить файл делаю так , а из ресурсов как достать?
        DatM.frxReport1.LoadFromFile(Path_ +   'spisok.fr3');
        DatM.frxReport1.ShowReport;
    
    Это верный путь или нет ?
    file_ := LoadBitmap(HInstance, 'SPISOK');
    DatM.frxReport1.LoadFromFile( file_);
    
    Есть ли возможность загнать всё в dll. Ну не зацепляя самого екзешника...
  • Lizard~Lizard~ Тольятти
    отредактировано October 2009
    o_ly написал: »
    Это верный путь или нет ?
    file_ := LoadBitmap(HInstance, 'SPISOK');
    DatM.frxReport1.LoadFromFile( file_);
    
    Есть ли возможность загнать всё в dll. Ну не зацепляя самого екзешника...

    Нет, не верный. Смотри в сторону TResourceStream.
    Как с ним работать разжевано в справке.
  • отредактировано 10:44
    LizarD написал: »
    Нет, не верный. Смотри в сторону TResourceStream.
    Как с ним работать разжевано в справке.

    Спасибо. В конце концов нашел возможность без употребления временных файлов.Все обьединяю в res файл.
    С минимум кода.
    try
          DatM.frxReport1.LoadFromStream(TResourceStream.Create(hInstance, 'Resource_3', RT_RCDATA));
        finally
       //   Free;
        end;
    
       DatM.frxReport1.ShowReport;
    

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.