public static void ChangePassword() { if (TryLogOn()) { FormChangePassword form = new FormChangePassword(); DialogResult result = form.ShowDialog(); if (result == DialogResult.OK) { OfficeApplicationProxy.changePassword(form.NewPassword); userInfo.ChangePassword(form.NewPassword); } } }
internal static bool TryLogOn() { bool tryLogOn = false; if (userInfo == null || webAddress == null) { LogOn(); if (userInfo == null || webAddress == null) { LogOff(); tryLogOn = false; } else { MenuListener.LogOn(); tryLogOn = true; } } else { tryLogOn = true; } if (tryLogOn) { try { OfficeApplicationProxy.isValidVersion(m_version); if (MenuListener != null) { MenuListener.LogOn(); } URIConfigurationList uRIConfigurationList = new URIConfigurationList(); String uri = OfficeApplicationProxy.WebAddress.ToString(); if (uri.EndsWith("gtw")) { uri = uri.Substring(0, uri.Length - 3); } uRIConfigurationList.Add(OfficeApplicationProxy.Credentials.UserName, new Uri(uri)); MenuListener.LogOn(); } catch (HttpException e) { MenuListener.LogOff(); tryLogOn = false; if (e.Code == HttpStatusCode.NotFound) { RtlAwareMessageBox.Show(null, "No se puede conectar a la dirección web, o la dirección es incorrecta o no se tiene habilitada la publicación de contenidos", "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (e.Code == HttpStatusCode.Forbidden) { RtlAwareMessageBox.Show(null, "Su clave o contraseña es incorrecta", "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { RtlAwareMessageBox.Show(null, e.Message, "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); } OfficeApplication.LogOff(); } catch (WebException e) { MenuListener.LogOff(); tryLogOn = false; if (e.Status == WebExceptionStatus.ConnectFailure) { RtlAwareMessageBox.Show(null, "El sitio web con el que intenta trabajar, se encuentra apagado o no se puede acceder al mismo.", "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { RtlAwareMessageBox.Show(null, e.Message, "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error); } OfficeApplication.LogOff(); } catch (Exception e) { OfficeApplication.WriteError(e); MenuListener.LogOff(); RtlAwareMessageBox.Show(null, e.Message, "Iniciar sessión", MessageBoxButtons.OK, MessageBoxIcon.Error); tryLogOn = false; OfficeApplication.LogOff(); } } return(tryLogOn); }