Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Балиев от 26-12-2022, 20:51:30

Название: Использование CommandMethod для вызова файла справки.
Отправлено: Балиев от 26-12-2022, 20:51:30
Здравствуйте,

Я хочу использовать перегрузку атрибута 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)"
>>>>>

Что я не так делаю?
Заранее благодарен.
Название: Re: Использование CommandMethod для вызова файла справки.
Отправлено: Lemieux от 27-12-2022, 11:06:32
Сделать перегрузку без локализации?
Название: Re: Использование CommandMethod для вызова файла справки.
Отправлено: Балиев от 27-12-2022, 11:44:19
Сделать перегрузку без локализации?
Ну да, а что не так? localizedNameId не предполагает пустого поля? или что?
Название: Re: Использование CommandMethod для вызова файла справки.
Отправлено: Lemieux от 27-12-2022, 12:06:36
localizedNameId не предполагает пустого поля
За этот месяц уже не первая тема с такой ошибкой. Видимо не предполагает string.Empty, а ждёт конкретный Id на локализацию из ресурсов.
Название: Re: Использование CommandMethod для вызова файла справки.
Отправлено: Балиев от 27-12-2022, 12:09:53
localizedNameId не предполагает пустого поля
За этот месяц уже не первая тема с такой ошибкой. Видимо не предполагает string.Empty, а ждёт конкретный Id на локализацию из ресурсов.
Т.е. нужно создавать фиктивную локализацию? Выглядит как-то кривовато...
Название: Re: Использование CommandMethod для вызова файла справки.
Отправлено: Lemieux от 27-12-2022, 12:30:58
Т.е. нужно создавать фиктивную локализацию? Выглядит как-то кривовато...
Передать null?
Название: Re: Использование CommandMethod для вызова файла справки.
Отправлено: Балиев от 27-12-2022, 16:30:03
Да, спасибо! Вроде заработало.