Laden...
J
Jörg
myCSharp.de - Member
46
Themen
152
Beiträge
Letzte Aktivität
vor 2 Jahren
Dabei seit
22.01.2009
Beruf
Programmierer
Interessen
Motorrad, Fahrrad, Programmieren
Erstellt vor 3 Jahren

Wow, das ging schnell 😉

Da hab ich wohl die falschen Suchbegriffe benutzt 😲

Vielen Dank 👍

Erstellt vor 3 Jahren

Hallo,

ich möchte unter Windows 10 die lokalen Gruppen eines Benutzers ermitteln.

Folgendes Snippet habe ich dazu gefunden:


        /// <summary>
        ///     Ermittelt alle Gruppen die ein bestimmter User gehört.
        /// </summary>
        /// <param name="username">
        ///     Windows-NT-Anmeldename des Benutzers für welchen die Gruppenzugehörigkeit ermittelt werden soll
        /// </param>
        /// <returns>
        ///     eine Liste mit den Gruppennamen
        /// </returns>
        public List<string> GetGroupsOfMember(string username)
        {
            List<string> groups = new List<string>();
            // Objekt für AD-Abfrage erzeugen
            using (DirectorySearcher searcher = new DirectorySearcher(new DirectoryEntry(string.Empty)))
            {
                // nach Kriterium filtern - hier nach Gruppe mit einem best. Namen (Inhalt von 'username')
                searcher.Filter = string.Concat(string.Format(@"(&(ObjectClass=user)(sAMAccountName={0}))", username));

                // Anfrage mit gesetzteen Filter ausführen und Ergebnisse durch iterieren
                foreach (SearchResult result in searcher.FindAll())
                {
                    // Eigenschaft 'MemberOf' des AD-Knotenpunktes 'result' durch iterieren
                    foreach (var group in result.Properties["MemberOf"])
                    {
                        // cast von 'group' zum Datentyp 'string' sollte nicht möglich sein, wird 'groupResult' 'null'
                        string groupResult = group as string;

                        if (groupResult != null)
                        {
                            // CN aus dem Pfad extrahieren und zur Liste hinzufügen
                            groups.Add(groupResult.Substring(3, groupResult.IndexOf(',') - 3));
                        }
                    }
                }
            }

            return groups;
        }


Allerdings funktioniert dieses Snippet nur wenn der PC über eine Active Directory-Anbindung verfügt.

Ich möchte allerdings die Gruppenzugehörigkeit eines Benutzers auch ohne Active-Directory-Anbindung auslesen.

Hat jemand hierfür ein gutes Snippet?

Erstellt vor 4 Jahren

Puh, das war eine schwere Geburt,
CORS war der springende Punkt.

Vielen Dank für deine Geduld mit mir 👍

Erstellt vor 4 Jahren

Was willst Du damit sagen?

Damit meine ich, dass wenn ich nicht versuche auf meine API (localhost) zuzugreifen, sondern auf die andere Adresse im Internet, bekomme ich Daten, also liegt es wohl doch an meiner API.

In Deiner Browser Developer Console sollte übrigens der Grund, wieso der FETCH fehl schlägt.
Mal reingeschaut?

Da kommt keine Meldung in dem Moment des Fehlers.
(Du meinst doch das Konsolen-Fenster, welches sich beim Debuggen parallel zum Browser öffnet?)

Erstellt vor 4 Jahren

Hi,

Schande über mein Haupt 8o

Ich hätte erwähnen sollen, dass ich die ersten Versuche mit Dependency Injection probiert habe.
Ich habe mich hierbei an der Anleitung von Dr. Holger Schwichtenberg orientiert:
Webprogrammierung mit Blazor WebAssembly

Aber da ich nicht weitergekommen bin, hab ich halt alles mögliche probiert.

So sieht es jetzt aus:


@inject HttpClient http

    protected override async Task OnInitializedAsync()
    {
        var TodoItems = await GetProductsAsync(http);

        One = TodoItems[0];
        Two = TodoItems[1];
        Three = TodoItems[2];
    }

    static async Task<List<string>> GetProductsAsync(HttpClient http)
    {
        List<string> item = null;
        //HttpResponseMessage response = await http.GetAsync("https://miraclelistbackend.azurewebsites.net/v2/About");
        HttpResponseMessage response = await http.GetAsync("https://localhost:5005/api/StringItems");
        if (response.IsSuccessStatusCode)
        {
            item = await response.Content.ReadFromJsonAsync<List<string>>();
        }
        return item;
    }

Wenn ich nun aber die Auskommentierung im Schnipsel auf die Seite 'Miraclelistbackend' ändere bekomme ich Texte 🤔

Ich peil es nicht

Erstellt vor 4 Jahren

Hallo,

ich mache gerade erste Geh-Versuche mit Blazor WebAssembly,
dabei komme ich irgendwie nicht weiter X(

Wie im Titel geschrieben versuche ich ein paar Strings aus einer funktionierenden ASP.NET Core-Web-API zu laden.

Mit folgendem Schnipsel versuche ich die Informationen im @code-Bereich der razor-Datei zu laden:


    protected override async Task OnInitializedAsync()
    {
        HttpClient http = new HttpClient();
        http.BaseAddress = new Uri("https://localhost:5005/");

        var TodoItems = await GetProductsAsync(http);
        One = TodoItems[0];
        Two = TodoItems[1];
        Three = TodoItems[2];
    }

    static async Task<List<string>> GetProductsAsync(HttpClient http)
    {
        List<string> item = null;
        HttpResponseMessage response = await http.GetAsync("api/StringItems");
        if (response.IsSuccessStatusCode)
        {
            item = await response.Content.ReadFromJsonAsync<List<string>>();
        }
        return item;
    }


Als Fehlermeldung bekomme ich 'TypeError: Failed to fetch'.
Das komische ist, das ich die Daten mit Postman sowie einer Test-ASP.NET Core-Web-App (mit obigen Schnipsel) problemlos lesen kann.

Alle Projekte laufen übrigens unter .NET 5

Gruß Jörg

Erstellt vor 4 Jahren
  • Mail Automation sollte man direkt über den Exchange machen / Office 365 API
  • Client Side Addins über JavaScript

Im Prinzip ist es keine komplette Mail Automation,
der User soll den E-Mail-Dialog noch angezeigt bekommen und editieren können.
Wäre sowas über Client Side Addins über JavaScript möglich?
Kennst du hier gute Tutorials zu?

Erstellt vor 4 Jahren

Hallo und Danke für den Tipp,

es liegt nicht an NetOffice.

Ich habe jetzt mal direkt die 'Microsoft Outlook 16.0 Object Library' verwendet.
Genau der gleiche Fehler.

Erstellt vor 4 Jahren

Hallo,

ich habe ein Problem beim öffnen einer neuen E-Mail mit der NetOffice.OutlookApi:

Mit folgendem Code öffne ich eine neue E-Mail und ändere dabei die AbsenderE-Mail-Adresse.


using Outlook = NetOffice.OutlookApi;

using (Outlook.Application outlookApp = new Outlook.Application())
using (Outlook.MailItem mailItem = (Outlook.MailItem)outlookApp.CreateItem(Outlook.Enums.OlItemType.olMailItem))
{
    //Neue Mail anzeigen
    mailItem.Display(false);

    //Empfänger und Betreff, Mail-Inhalt, Anhang etc.
    ....

    //Absender
    foreach (Outlook.Account account in outlookApp.Session.Accounts)
        if (account.DisplayName == "Adresse2@testXYZ.de")
            mailItem.Sender = account.CurrentUser.AddressEntry;
}

Soweit funktioniert alles, allerdings wird in der neu geöffneten E-Mail nicht die korrekte Signatur verwendet. Es wird immer die Signatur vom Standard-Konto angezeigt.
Die Signaturen sind aber korrekt eingerichtet, wenn ich in Outlook eine neue E-Mail öffne und die alternative Adresse für "Von" auswähle, wird die korrekte Signatur angezeigt, nur nicht wenn ich dasgleiche programmatisch mache.

Ist dies ein Bug in der API?

Erstellt vor 4 Jahren

Im Prinzip HTTP basierte Austauschformate wie Json oder XML.
Gerne mit aufgesetzten Protokollen wie REST, OData oder GraphQL.

Vielen Dank, mit den Stichworten hab ich erstmal ein bisschen Beschäftigung.

10 von 152 Beiträgen