Component Object Model (COM) - это компонентная технология от Microsoft, обеспечивающая удаленное взаимодействие, независимость от языка и программирование на основе интерфейсов. Если у вас есть вопросы о последовательном порту COM, вам следует использовать тег [serial-port].
0 ответов

Доступ к моей библиотеке WPF COM из Python

Я хотел бы запустить свое приложение WPF из скрипта Python, однако у меня возникли трудности. Для этого я преобразовал приложение WPF в библиотеку COM следующим образом: namespace MyWpfApp { [Guid("F75D3377-D677-41BF-B3D5-C677C442228F")] public inte…
23 янв '14 в 18:03
1 ответ

Невозможно привести COM-объект типа "System.__ComObject" к типу класса "System.Array".

Я пытался читать Excel char с VB.net, я использую VS2013 и Office2013 когда я использовал функцию LBOUND и UBOUND, это вызывало это исключение код: Dim objApp As New Excel.Application Dim objWorkbook As Excel.Workbook Dim objWorksheet As Excel.Works…
03 май '18 в 16:05
1 ответ

Многопоточная прокачка сообщений без второй формы

У меня есть приложение C#, которое использует компонент COM. Этот COM-компонент требует обработки сообщений (Application.Run()) для его обработки. Это означает, что он застрял в главном потоке. Но недавно я обнаружил, что можно запустить другой Appl…
15 сен '09 в 16:01
2 ответа

COM-функции порождают потоки, которые не исчезают

Я работаю над небольшим приложением, которое предназначено для вызова некоторых (действительно разнообразных) функций, которые, к сожалению, находятся вне моего контроля и разработаны таким образом, что я понятия не имею, когда будет выполнено прави…
12 ноя '10 в 05:17
1 ответ

Проблема возврата объекта из VB.NET COM Assembly в VBA (Access)

У меня есть сборка в VB .NET 2.0, которую я пытаюсь использовать для вызова веб-службы. Это будет видимым COM и вернет результаты в Access в VBA. Сборка.NET проходит все тесты и работает отлично. При вызове методов из VBA возникли ошибки "Объект не …
15 мар '11 в 23:02
0 ответов

Развертывание сервера Excel RTD

Я пытаюсь разработать RTD-сервер, похожий на этот пример в C#. RTD-серверу требуется другая.NET DLL, которая использует собственный C-DLL..NET DLL вызывает родной C DLL через Interop.До сих пор я скопировал обе библиотеки DLL в тот же каталог, что и…
12 мар '12 в 13:02
1 ответ

Маршал универсальные возвращаемые типы для com-взаимодействия

Возможно ли маршалировать универсальный тип возврата как неуниверсальный для взаимодействия COM? Допустим, у меня есть следующий класс: [ComVisible(true)] public class Foo { public IEnumerable<string> GetStr() // Generic return type { yield br…
08 апр '10 в 07:30
0 ответов

C# код для передачи потока, совместимого с COM-взаимодействием

У меня есть функция, которая выглядит как-то ниже public bool GetDocList(string Token, bool StatusActive, string StatusName, string HubId, out Stream DocList) { .... DocList = GetDocListFromXML(documents); .... } когда эта функция доступна для COM с…
30 окт '18 в 13:13
1 ответ

Запланируйте выполнение regsvr32 при перезагрузке

Я пишу установщик на NSIS, который регистрирует расширение оболочки. При удалении и обновлении старое расширение не может быть удалено / перезаписано, так как explorer.exe блокирует его, и процесс перезапуска и уничтожения исключается. Поэтому я изв…
22 июн '11 в 19:05
1 ответ

Ссылка COM InDesign в объекте, но не в каталоге bin

Мое приложение (C#, .NET 4.0, VS2010) ссылается на COM DLL (библиотека типов Adobe InDesign CS6). Когда я собираю приложение, tlibimp создает файл "interop.indesign.dll" и появляется в obj\x86\release. Тем не менее, он не отображается в bin\x86\rele…
05 фев '13 в 10:30
3 ответа

.NET mshtml: как сдать BSTR SAFEARRAY?

Класс mshtml.HTMLDocumentClass в сборке Microsoft.mshtml.dll имеет метод: public virtual void write(params object[] psarray); Избегая реального вопроса, какой код вы бы использовали для вызова write ()? Вы бы использовали: String html = "<html&gt…
28 янв '09 в 19:51
1 ответ

Использовать COINIT_APARTMENTTHREADED или COINIT_MULTITHREADED в Media Foundation?

В своем исследовании Media Foundation я натолкнулся на несколько, казалось бы, противоречивых советов из двух очень авторитетных источников. От MSDN:Media Foundation и COM: https://msdn.microsoft.com/en-us/library/windows/desktop/ee892371(v=vs.85).a…
3 ответа

Ошибка IClassFactory из-за следующей ошибки: 800a0153

Я пытаюсь сослаться на компонент com, и он выдает ошибку ниже. Не удалось создать экземпляр компонента COM с CLSID {xxx} из IClassFactory из-за следующей ошибки: 800a0153. В частности, ошибка возникает, когда я пытаюсь создать экземпляр объекта. Я п…
17 фев '11 в 19:45
0 ответов

Пользовательский HRESULT из COM-компонента

Создание пользовательских HRESULT был рассмотрен здесь Создание собственного HRESULT? Решение вышеупомянутого вопроса хорошо для нативных клиентов C++, они могут использовать возвращенные HRESULT в FormatMessage() и получить строку ошибки, как насче…
08 июн '15 в 11:01
2 ответа

Конвертировать формат VB () в PHP

В PHP я пытаюсь прочитать файл Excel с помощью COM(): $rrc_app = new COM("Excel.application"); $rrc_workbook = $rrc_app->Workbooks->Open($filename); $rrc_worksheet = $rrc_workbook->Worksheets('Top sheet'); $rrc_worksheet->activate; Я поп…
10 янв '10 в 12:24
3 ответа

Поддержка многопоточности COM

Работая с COM в первый раз, я получил эту dll COM, скажем ABCServer.dll, я создал RCW и добавил ссылку на него в свой проект. Теперь мое приложение создает несколько потоков, и каждый поток создает определенные классы из COM DLL и работает с ними. Н…
28 окт '11 в 14:32
0 ответов

Как захватить проглоченную клавишу Tab при использовании ActiveX, Delphi и DevExpress?

Это очень специфическая проблема. У меня есть элемент управления ActiveX C#, встроенный в форму Delphi7. Клавиша Tab проглатывается, поэтому вкладка из элемента управления в элемент управления не работает в самом нижнем слое. Слои Delphi7 (сверху вн…
04 мар '14 в 19:13
0 ответов

Зачем tlbimp конвертировать интерфейсы в коклассы?

Фактически это функция, которая в большинстве случаев преобразует интерфейс в кокласс. Конкретно если в IDL у меня есть interface IFirst { } interface ISecond { HRESULT GetFirst( IFirst** ); } coclass First { interface IFirst; } тогда tlbimp увидит,…
11 май '12 в 07:17
1 ответ

Распознавать dll на любом компьютере на сервере

У меня есть библиотека классов vb.net, созданная в Visual Studio, и я сделал COM видимым, и это можно узнать через Excel VBA на моем компьютере. Следующий шаг, который мне нужно сделать, - позволить любому в офисе иметь возможность ссылаться на библ…
16 июл '13 в 19:01
0 ответов

Интерфейс Python с C# COM dll - com_record не работает как параметр [Out]

Я запускаю скрипт Python для взаимодействия с aC# dll, зарегистрированным как приложение com, и испытываю трудности с обработкой выходного параметра структуры. Я создаю запись COM и успешно передаю ее в вызов функции COM, но данные не меняются. Моя …
03 июл '17 в 18:15