J'essaie de créer un contrôleur ActiveX. J'utilise VS2010 (.Net4) Je dois créer un objet COM (en C #) et je ne sais pas comment commencer (quel type de projet utiliser ect.)
Merci
J'essaie de créer un contrôleur ActiveX. J'utilise VS2010 (.Net4) Je dois créer un objet COM (en C #) et je ne sais pas comment commencer (quel type de projet utiliser ect.)
Merci
OK j'ai trouvé la solution et je vais l'écrire ici pour le bien commun.
using System.Runtime.InteropServices;
le fichier
maintenant vous pouvez utiliser l'objet COM en utilisant l'identificateur de Programme.
exemple: le code C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace Launcher
{
[InterfaceType(ComInterfaceType.InterfaceIsDual), Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")]
public interface ILauncher
{
void launch();
}
[ClassInterface(ClassInterfaceType.None), Guid("YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYY"), ProgId("Launcher.Launcher")]
public class Launcher : ILauncher
{
private string path = null;
public void launch()
{
Console.WriteLine("I launch scripts for a living.");
}
}
}
et VB script à l'aide de la COM:
set obj = createObject("PSLauncher.PSLauncher")
obj.launch()
et la sortie sera:
J'ai lancer les scripts pour une vie
Vous pouvez utiliser un projet de bibliothèque de classes. Déclarer un type avec des méthodes qui seront exposées comme un objet COM.
Assurez-vous que l'assemblage a été fait COM-visible:
Et enfin l'enregistrer à l'aide de regasm.exe:
regasm.exe /codebase mylib.dll
L'assemblage est maintenant exposée comme un objet COM et le type que vous avez déclarée peut être consommée par tout client qui prend en charge COM.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.