Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von SeriouslyNot
Thema: WinForms - Zelle in DGV farbig wenn bestimmtes Datum angezeigt wird
Am im Forum: GUI: Windows-Forms

Hi,

das Thema ist zwar schon ein paar Tage alt aber vielleicht hilft dir das ja noch.


1. Erstelle für dein DataGridView ein Ereigniss für "RowPrePaint"

2.


private void DataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
    DateTime tmpDateWv = Convert.ToDateTime(DataGridView1["DataGridViewTextBoxColumn", e.RowIndex].Value);
    DateTime tmpDateToday = DateTime.Today;
    if (tmpDateWv < tmpDateToday.AddDays(-5))
    {
        DataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFC7CE"); // rot
    }
    else
    {
        DataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFEB9C"); // gelb
    }
}

Ist jetzt ein Beispiel aus meinem Projekt, sollte aber ohne Probleme auf deine Bedürfnisse anpassbar sein.

Thema: Datengebundenen Tableadapter mit Task (neu)laden
Am im Forum: GUI: Windows-Forms

Ok ich dachte, dass ich mich bereits wieder im UI Thread befinde... Nach dem anpassen kommt folgende Fehlermeldung:

Fehler
ExecuteReader erfordert eine geöffnete und verfügbare Connection. Der aktuelle Status der Verbindung ist 'Verbindung wird hergestellt'.

Thema: Datengebundenen Tableadapter mit Task (neu)laden
Am im Forum: GUI: Windows-Forms

Hallo,

ich versuche mich gerade in das Thema Tasks einzulesen. Ich versuche in einem Task ein Tableadapter zu laden und damit ein Chart Control zu befüllen.

public Task FillAsync()
        {
            return Task.Factory.StartNew(() =>
            {
                ( this.TableAdapter.Fill(this.DataSet.Test);

                // etc
            });
        }
        public async Task RebindUI()
        {
            await FillAsync();

            this.chart1.DataSource = this.DataSet.Test;
            chart1.Series[1].YValueMembers = "id";
            chart1.Series[1].XValueMember = "anzahl";
            chart1.DataBind();
            chart1.Update();
        }


Problem ist das der Chart im GUI nichts anzeigt. Wenn ich in Einzelschritten durch den Code gehe, wird der Chart korrekt angezeigt.

Thema: ComboBox mit TableAdapter.Fill() & Thread
Am im Forum: GUI: Windows-Forms

Vielen Dank für die Hilfe. So hat es geklappt:

                
Thread threadDB = new Thread(delegate() { getDataBase(); });
threadDB.Start();


private void getDataBase()
{
this.TableAdapter.Fill(this.DataSet.Test);

comboBox1.Invoke((MethodInvoker)(() =>
                {
                    this.comboBox1.DataSource = this.DataSet.Test;
                    this.comboBox1.DisplayMember = "Name";
                    this.comboBox1.ValueMember = "ID";
                  
                }));
}

Thema: ComboBox mit TableAdapter.Fill() & Thread
Am im Forum: GUI: Windows-Forms

Hallo,

ich möchte gern eine ComboBox im Hintergrund mit Daten füllen. Mein bisheriger Ansatz sieht so aus:


Thread threadDB = new Thread(delegate() { getDataBase(); });
threadDB.Start();


private void getDataBase()
{
comboBox1.Invoke((MethodInvoker)(() => {   this.TableAdapter.Fill(this.DataSet.Test);}));
}

Leider bleibt die ComboBox leer und eine Exception gibts auch nicht. Was mache ich falsch?

Thema: Nutzer einer Gruppe sprachneutral(!) remote auslesen: "Administratoren" vs. "Administrators"
Am im Forum: Rund um die Programmierung

Zitat von Abt
Folgendes geht bei mir:

            var adminGroupSID = "S-1-5-32-544";

            PrincipalContext ctx = new PrincipalContext( ContextType.Machine );
            GroupPrincipal grp = GroupPrincipal.FindByIdentity( ctx, IdentityType.Sid, adminGroupSID );

Wenns Remote nicht geht fehlen Dir wohl die Rechte.

Danke, das funktioniert - zumindest lokal. Wenn ich noch einen Host angebe, kommt folgender Fehler:
Fehler
Die Bindungsnummer ist unzulässig.

Thema: Nutzer einer Gruppe sprachneutral(!) remote auslesen: "Administratoren" vs. "Administrators"
Am im Forum: Rund um die Programmierung

Hallo,

hab das jetzt mal probiert und folgendes ist dabei entstanden:

PrincipalContext ctx = new PrincipalContext(ContextType.Machine, strHost);
            GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, IdentityType.Sid, "S-1-5-32-544");

Leider wirft er nur folgenden Felher aus:
Zitat
Unbekannter Fehler (0x80005000)

Thema: Nutzer einer Gruppe sprachneutral(!) remote auslesen: "Administratoren" vs. "Administrators"
Am im Forum: Rund um die Programmierung

Guten Morgen,

ich versuche mittels u.s. Methode alle Nutzer der Gruppe Administratoren auszulesen.
Funktioniert soweit auch ganz gut, einziges Problem sind verschiedene Sprachen. Im deutschen heißt die Gruppe "Administratoren", im englischen "Administrators" etc.
Kennt ihr eine Möglichkeit, statt dem exakten Namen der Gruppe anzugeben, die ganze Sache etwas Sprachneutraler zu gestalten?

private void GetUsers(String strHost, int Line)
        {
            using (DirectoryEntry groupEntry = new DirectoryEntry("WinNT://" + strHost + "/Administratoren,group"))
            {
                int i = 0;
                foreach (object member in (IEnumerable)groupEntry.Invoke("Members"))
                {
                    using (DirectoryEntry memberEntry = new DirectoryEntry(member))
                    {
                        string fullUser = memberEntry.Path;
                        char[] strTrim = { 'W', 'i', 'n', 'N', 'T', ':', '/', '/'};
                        string shortUser = fullUser.TrimStart(strTrim);
                        user[i] = shortUser;
                        dgvItems.Rows[Line].Cells[i+2].Value = user[i];
                        i += 1;
                    }
                }
            }
        }

Thema: [gelöst] Process.Start mit RunAs
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Richtig, ich habe mich vielleicht unverständlich ausgedrückt. Die Passwörter sind schon bekannt, da andere Programme bereits per runas gestartet werden und mit /savecred die Passwörter gespeichert sind. Das wollte ich mir mit runas zunutze machen.
Lösung habe ich weiter oben im Beitrag editiert.

Vielen Dank für eure Hilfe.

Thema: [gelöst] Process.Start mit RunAs
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Deine Lösung funktioniert. Mein Problem war, das die Passwörter unbekannt sind und bleiben sollen. Ich kann die Leute nicht zwingen ihre Passwörter rauszurücken, damit ich Sie in eine Datei eintragen kann.

Thema: [gelöst] Process.Start mit RunAs
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Das geht leider nicht, da das Programm von mehreren Personen genutzt wird, welche immer ein anderen Kennwort benutzen. Der einzige Ansatz war ohne das ein Passwort eingegeben werden muss oder hinterlegt werden müssen - runas ...

edit: Manchmal sieht man den Wald vor lauter Bäumen nicht...

Process.Start("cmd.exe", @"/C runas.exe /savecred /user:" + struser + " " + "\"C:\\Program Files\\SolarWinds\\DameWare\\DWRCC.exe -c -h -m:" + strhost + "\"");

So gehts. :)

Thema: [gelöst] Process.Start mit RunAs
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Funktioniert leider nicht.

Fehler
Der angegebenen Datei ist keine Anwendung zugeordnet

            
            ProcessStartInfo startInfo = new ProcessStartInfo();
            startInfo.Verb = @"cmd.exe";
            startInfo.Arguments = @"runas.exe /savecred /user:domain\user C:\\Program Files\\SolarWinds\\DameWare\\DWRCC.exe";
            Process process = new Process();
            process.StartInfo = startInfo;
            startInfo.ErrorDialog = true;
            process.Start();

Thema: [gelöst] Process.Start mit RunAs
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich möchte gern ein Programm als anderer Nutzer starten. Grundsätzlich erstmal kein Problem, jedoch soll kein Passwort eingegeben. Deshalb mittels "RunsAs" und /savecred. Ich dreh mich gerade absolut um Kreis und bitte um eure Hilfe.

Das war mein Ansatz:

Process.Start(@"C:\Windows\System32\runas.exe C:\Program Files\Programm.exe /arg" , @"/savecred /user:domain\user");

Vielen Dank schon mal..