Benutzer-Werkzeuge

Webseiten-Werkzeuge


coding:csharp

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
coding:csharp [2024/08/31 11:17]
jango
coding:csharp [2025/01/01 09:56] (aktuell)
jango [COM InterOp]
Zeile 19: Zeile 19:
 { {
     class Hello      class Hello 
-    {            +    {          
 +     
 +        #region Main Region 
 +        
         static void Main(string[] args)         static void Main(string[] args)
         {         {
Zeile 25: Zeile 28:
             Console.WriteLine("Parameter: " + args[0]);             Console.WriteLine("Parameter: " + args[0]);
                          
-        }       +        }    
 +         
 +        #endregion 
 +            
     }        }   
 } }
Zeile 568: Zeile 574:
 </code> </code>
  
 +=====COM InterOp=====
 +
 +<code csharp>
 +using System;
 +using System.Runtime.InteropServices;
 +
 +[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}!");
 +    }
 +}
 +</code>
 +
 +Für InterOp registrieren (systemweit)
 +<code>
 +C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe /codebase /tlb ClassLibrary.dll
 +</code>
 +
 +<code powershell>
 +$comObject = New-Object -ComObject "MyComClass"
 +$comObject.SayHello("World")
 +</code>
 =====Server-Client===== =====Server-Client=====
  
coding/csharp.1725095877.txt.gz · Zuletzt geändert: 2024/08/31 11:17 von jango