Я проверил stackoverflow (и то, что похоже на всюду). Я хотел бы получить работу COM решение, так что JScript файл может быть записан в видеПолучение библиотеки CX ActiveX/COM для работы через JScript
var T = new ActiveXObject("MySimulator.World");
T.MyMethod();
Он будет выполнен в командной строке с помощью
cscript mytest.js
В этом случае, я получаю сообщение об ошибке " Сервер автоматизации не может создать объект ».
В C#, я следовал различные предложения, с последним интерфейсом существа:
[ComVisible(true)]
[InterfaceType(ComInterfaceType.InterfaceIsDual), Guid("EAA4976A-45C3-4BC5-BC0B-E474F4C3C83B")]
public interface IComMyReaderInterface
{
void MyFunction();
}
[ComVisible(true)]
[ClassInterface(ClassInterfaceType.None), Guid("0D53A3E8-E51A-49C7-944E-E72A2064F9DD"), ProgId("MySimulator.World")]
[ComDefaultInterface(typeof(IComMyReaderInterface))]
public class MyReader : IComMyReaderInterface
{
public MyReader()
{
...
}
public void MyFunction()
{
...
}
...
}
Спасибо и просто дайте мне знать, если требуется дополнительная информация.
Несколько шагов, чтобы получить эту работу, они уже хорошо освещены в других вопросах. Однако никто не назвал это совершенно неправильным. Предполагая, что имя пространства имен на самом деле является MySimulator, ProgID - это «MySimulator.MyReader», а метод вызова - MyFunction, а не MyMethod. –
Ханс - спасибо за то, что посмотрели. Раньше у меня было это правильно - пробовать разные вещи. Изменение его обратно на MySimulator.MyReader не исправляет его. Я посмотрел и попробовал дюжину потенциальных решений, но пока ничего не работает. Мне интересно, что является ключевым/критическим, так что jscript увидит его так, чтобы объект создавался через jscript? Еще раз спасибо. – Buck