Страницы

Поиск по вопросам

понедельник, 23 декабря 2019 г.

Возможно ли заставить работать приложение, на ПК, где нет необходимой версии офиса?

#c_sharp #net #visual_studio #com #office


Возможно ли заставить работать приложение, на ПК, где нет необходимой версии офиса?

Разрабатывал приложение, где стоял 2016 офис, потом кинул приложение на ПК, где 2007
офис и возникли проблемы при запуске...

На машине стоял 2007 офис и я попробовал кинуть библиотеку(Вроде, от 2016) и получил
такую ошибку:


  
    System.IO.FileLoadException: Could not load file or assembly 'office, Version=14.0.0.0,
Culture=neutral,
    PublicKeyToken=71e9bce111e9429c' or one of its dependencies. The
    located assembly's manifest definition does not match the assembly
    reference. (Exception from HRESULT: 0x80131040) File name: 'office,
    Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c'
    
    
  
  
  WRN: Assembly binding logging is turned OFF. To enable assembly bind
  failure logging, set the registry value
  [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There
  is some performance penalty associated with assembly bind failure
  logging. To turn this feature off, remove the registry value
  [HKLM\Software\Microsoft\Fusion!EnableLog].


От офиса я использую только Access, например выполняю запросы, а где-то открываю
RecordSet и делаю обновление по одной записи...
    


Ответы

Ответ 1



У Microsoft для таких случаев есть свободно распространяемые компоненты. Для Access 2016 - можно взять тут. Похожие компоненты есть и для некоторых других приложений из пакета MS Office. Эти компоненты не позволяют создавать файлы, но позволяют просмотреть и напечатать, а если Excel- или Access-файл представляет из себя приложение, то и использовать функции такого приложения. По факту эти компоненты содержат все необходимое кроме интерфейса для создания и редактирования, который вы можете реализовать в свое программе. Таким образом вы можете не требовать от пользователя наличие установленного офиса, а включить в свой инсталятор такой компонент и устанавливать его вместе с приложением, либо оставить выбор за пользователем, ставить себе полный пакет офис или установить только компоненты для просмотра документов, о чем собственно и написано в описании компонента, например Microsoft Access 2016 Runtime: Microsoft Access 2016 provides a rich platform for developing database management solutions with easy-to-use customization tools. If no end-user customization is required (including report modifications), you can choose to distribute those Access 2016 solutions so that they run without requiring a full installation of Access 2016. To do so, you must package and distribute your application with the Access 2016 Runtime.

Комментариев нет:

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