hMailServer, COM API und C#

Die COM API des Windows Mailservers hMailServer bietet die Möglichkeit der Verwaltung über eine COM-Schnittstelle. In C# kann somit der Server administriert werden.

Zunächst muss dafür die ausführbare Datei hmailserver.exe als  Referenz hinzugefügt werden.

hMailServer-Referenz

Im Anschluss kann nun die API verwendet werden:

// Objekt erstellen
Application mailserver = new hMailServer.Application(); 
// Anmelden mit dem Admin-Accounts 
mailserver.Authenticate(username, password); 

// Erstellen einer Liste sämtlicher Accounts zu einer bestehenden Domain 
Domain domain = mailserver.Domains.get_ItemByName("xyz.net"); 
List accList = new List(); 
for (int i = 0; i < domain.Accounts.Count; i++) { 
	accList.Add(domain.Accounts[i].Address); 
}
 
// Ein Account zu einer bestehenden Domain hinzufügen 
Domain domain = mailserver.Domains.get_ItemByName("xyz.net"); 
Account account = domain.Accounts.Add(); 
account.Address = "info" + "@" + domain.Name; 
account.Save();

Mit Hilfe der Dokumentation für die COM API der Software können zahlreiche Dinge administriert werden.

2 Gedanken zu „hMailServer, COM API und C#

  1. Hallo Marco,

    Main Deutsch ist nicht so gut. Ich komme von Zuid-Africa. Ich hab hmailServer ge-implementiert als ein windows service. Jetzt will ich eine application programmieren die leuft als ein windows service. Diese Application soll connectieren zu main hmailServer service und soll die users controllieren. When schlimste zu slimmsten kommt werde ich die users in den database auf den hmail server gebraucht in meine application rein ziehen. Aber wen dieser COM zum windows service connectieren can von wo ich alles kontrollieren kann dan wuerde es leichter sein. Ist dies moeglich? Excuse my German.

    Kind Regards
    Konrad

  2. Hello Konrad,

    so as I understood you want to manage the users in hmailserver using the COM API and not directly in the database? Is that right?

    If so, I think you can use COM. It looks like you only have to adapt the example above where I exemplary output existing users (accounts) of an existing domain and after that add a further user (account) to that domain.

    You also can write in english.

    Best regards,
    Marco

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.