public void GetUserPasswordDetails(string dcName) { if (this.IsHandleCreated) { Invoke(new MethodInvoker(() => Cursor = Cursors.WaitCursor)); } if (dataGridView.Columns != null) { try { var pd = new PuzzelLibrary.AD.User.Information.PasswordDetails(); pd.GetUserPasswordDetails(Username, dcName); if (dataGridView.InvokeRequired) { dataGridView.Invoke(new MethodInvoker(() => dataGridView.Rows.Add(dcName, pd.userAccountLocked, pd.badLogonCount, pd.lastBadPasswordAttempt, pd.lastPasswordSet, pd.userLockoutTime))); } else { dataGridView.Rows.Add(dcName, pd.userAccountLocked, pd.badLogonCount, pd.lastBadPasswordAttempt, pd.lastPasswordSet, pd.userLockoutTime); } } catch (Exception e) { PuzzelLibrary.Debug.LogsCollector.GetLogs(e, dcName + "," + Username); } } Invoke(new MethodInvoker(() => Cursor = Cursors.Default)); }
private void MenuItemPasswordStatus_Click(object sender, EventArgs e) { var pd = new PuzzelLibrary.AD.User.Information.PasswordDetails(); pd.GetUserPasswordDetails(Username, domainAddress); System.Text.StringBuilder messagebox = new(); DateTime pwdLastSet = pd.lastPasswordSet; DateTime expirePwd = pd.passwordExpiryTime; //pierwszalinijka messagebox.Append("Maksymalna długość hasła dla " + Username + " wynosi " + (expirePwd - pwdLastSet).Days.ToString() + " dni"); //drugalinijka messagebox.Append("\n\n"); //trzecia linijka messagebox.Append("Hasło obowiązuje do :" + pwdLastSet.ToShortDateString() + " " + pwdLastSet.ToLongTimeString()); //czwarta linijka messagebox.Append("\n\n"); //piąta linijka messagebox.Append("Hasło wygasa w: " + expirePwd.ToShortDateString() + " " + expirePwd.ToLongTimeString()); MessageBox.Show(messagebox.ToString(), "Status hasła"); }