1 Pluspunkt 0 Minuspunkte

Wenn ich eine Funktion für COM registriere muss ich ja eine Guid angeben wie z.B

using System;
using System.Runtime.InteropServices;

namespace MyNamespace
{

    [ComVisible(true)]
    [InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
    [Guid("E0F805D1-77CC-4C14-930E-5D65A1A39A2F")]
    public interface IMyComInterface
    {

        void SayHello(string name);

    }

    [ComVisible(true)]
    [ClassInterface(ClassInterfaceType.None)]
    [Guid("1C9D8F2B-8D52-45A7-9E3D-ED6F2CE010E0")]
    public class MyComClass : IMyComInterface
    {

        public void SayHello(string name)
        {

            Console.WriteLine($"Hello, {name}!");

        }

    }

}

Wenn ich eine neue Funktion einfügen will, muss die ja auch wieder eine eindeutige Guid haben. Kann ich mir die aussuchen solange ich mich an das Format halte also die "-" an bestimmten Stellen oder gibt es da ein bestimmtes Verfahren zum erstellen so einer Guid?

bezieht sich auf eine Antwort auf: Com Interop in Powershell
von  

2 Antworten

0 Pluspunkte 0 Minuspunkte
In Visual Studio hast du unter dem Menü "Extras" den Eintrag "GUID erstellen".
von (566 Punkte)  
0 Pluspunkte 0 Minuspunkte

Du kannst in C# eine GUID erstellen.

Console.WriteLine(Guid.NewGuid().ToString());
von (868 Punkte)