Использование CommandMethod для вызова файла справки.

Автор Тема: Использование CommandMethod для вызова файла справки.  (Прочитано 4832 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

Оффлайн БалиевАвтор темы

  • ADN Club
  • ***
  • Сообщений: 188
  • Карма: 2
Здравствуйте,

Я хочу использовать перегрузку атрибута CommandMethod для вывода справки. Речь идет о перегрузке вида:
Код - C# [Выбрать]
  1. public CommandMethodAttribute(string groupName, string globalName, string localizedNameId, Autodesk.AutoCAD.Runtime.CommandFlags flags, System.Type contextMenuExtensionType, string helpFileName, string helpTopic)
  2.  


Пытаюсь использовать следующий код:
Код - C# [Выбрать]
  1.         [Rt.CommandMethod("", "Prmtr", "", Rt.CommandFlags.Undefined, null, "Help.chm", "Введение")]
  2.         public static void Prmtr()
  3.         {
  4.             ..........................
  5.         }
  6.  

Но в результате сборка не загружается, а отладчик выдает следующую тираду:
>>>>>
Не удалось загрузить сборку. Сведения об ошибке: System.Resources.MissingManifestResourceException: Не удалось найти ресурсы, соответствующие указанной культуре или нейтральной культуре.  Проверьте правильность внедрения или связывания "Prmtr.Start.resources" со сборкой "Prmtr" во время компиляции, или убедитесь, что все необходимые сопутствующие сборки полностью подписаны и могут быть загружены.
   в System.Resources.ManifestBasedResourceGroveler.HandleResourceStreamMissing(String fileName)
   в System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(CultureInfo culture, Dictionary`2 localResourceSets, Boolean tryParents, Boolean createIfNotExists, StackCrawlMark& stackMark)
   в System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo requestedCulture, Boolean createIfNotExists, Boolean tryParents, StackCrawlMark& stackMark)
   в System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents)
   в System.Resources.ResourceManager.GetString(String name, CultureInfo culture)
   в Autodesk.AutoCAD.Runtime.CommandClass.AddCommand(ICommandLineCallable ca, MethodInfo mi)
   в Autodesk.AutoCAD.ApplicationServices.AutoCADApplicationHolder.Initialize(Assembly assembly)
   в Autodesk.AutoCAD.ApplicationServices.ExtensionLoader.ProcessAssembly(Assembly assembly)"
>>>>>

Что я не так делаю?
Заранее благодарен.

Оффлайн Lemieux

  • ADN OPEN
  • ****
  • Сообщений: 382
  • Карма: 21
Сделать перегрузку без локализации?

Оффлайн БалиевАвтор темы

  • ADN Club
  • ***
  • Сообщений: 188
  • Карма: 2
Сделать перегрузку без локализации?
Ну да, а что не так? localizedNameId не предполагает пустого поля? или что?

Оффлайн Lemieux

  • ADN OPEN
  • ****
  • Сообщений: 382
  • Карма: 21
localizedNameId не предполагает пустого поля
За этот месяц уже не первая тема с такой ошибкой. Видимо не предполагает string.Empty, а ждёт конкретный Id на локализацию из ресурсов.

Оффлайн БалиевАвтор темы

  • ADN Club
  • ***
  • Сообщений: 188
  • Карма: 2
localizedNameId не предполагает пустого поля
За этот месяц уже не первая тема с такой ошибкой. Видимо не предполагает string.Empty, а ждёт конкретный Id на локализацию из ресурсов.
Т.е. нужно создавать фиктивную локализацию? Выглядит как-то кривовато...

Отмечено как Решение Балиев 27-12-2022, 17:00:05

Оффлайн Lemieux

  • ADN OPEN
  • ****
  • Сообщений: 382
  • Карма: 21
Т.е. нужно создавать фиктивную локализацию? Выглядит как-то кривовато...
Передать null?

Оффлайн БалиевАвтор темы

  • ADN Club
  • ***
  • Сообщений: 188
  • Карма: 2
Да, спасибо! Вроде заработало.