문제

나는있다 Winform 앱 내가 배치했다 Clickonce 그것은 나를 위해 설치하고 작동합니다 (나의 userLogin) 우리의 모든 시스템에서 도메인 그러나 정기적으로 시작하지는 않습니다 도메인 사용자.

그것은 생산하지 않습니다 모든 오류 어떤 종류의 어떤 종류의 경우에는 무기한이 있습니다. 그것 일하는 데 사용되었습니다 그리고 나는 그것이 지금 작동하지 않는 것이 무엇인지에 대해 상실하고 있습니다.

나는 무엇을 찾아야할지에 대한 완전한 손실에있다. 나는 복용을 시도했다 도메이너스 그리고 그들에게 상승 도메인드민(나처럼) 그러나 아무것도 바뀌지 않았습니다. 나는 이것이 약간 모호하다는 것을 알고 있지만 사람들이 이것에 대해 가질 수있는 통찰력을 찾고 있습니다.

문제 해결 방법?
어디서 찾아야합니까?

아무것 감사하겠습니다.


나는 "행"을 일으키는 원인을 발견했습니다. 나는 여전히 그 이유를 이해하지 못합니다.

            try
        {
            HUD.CurrentUserRole = new ConnectBLL.BLL.RoleAccess(HUD.CurrentUser);
            sbrHUD_SecureRole.Text += " " + HUD.CurrentUserRole.RoleDescription;
        }
        catch (Exception exception)
        {
            exception.LogError(this);
        }

내 테스트 사용자 인 Malcolm Reynolds는 RoleAccess ()가 반환 한 역할이 없습니다. 내가 이해하지 못하는 것은 왜 거기에 매달려있는 것과 오류를 던지는 지에 대한 것입니다.

LogError 내 사서함에 예외를 이메일로 보내고 사용자 친화적 인 방식으로 오류를 표시하는 확장 방법입니다.

        public static void LogError(this Exception exception, DevExpress.XtraEditors.XtraForm whichForm)
    {
        var fileName = GetDesktopImage(whichForm);

        SendExceptionMail(exception, fileName);

        ExceptionMessageBox box = new ExceptionMessageBox(exception);
        box.Show(whichForm);
    }

    private static void SendExceptionMail(Exception exception, String fileName)
    {
        try
        {
            SmtpClient smtpClient = new SmtpClient("WWCMAIL");
            var innerExceptionMessage = String.Empty;
            if (exception.InnerException != null)
            {
                innerExceptionMessage = exception.InnerException.Message;
            }
            var stackTrace = exception.StackTrace;
            var source = exception.Source;

            MailMessage message = new MailMessage
                {
                    From = new MailAddress("MATRIX@wwCares.org"),
                    Subject = Environment.UserName + ": MATRIX Application Error",
                    Body =
                        "***THE EXCEPTION***\n" + exception.Message + "\n\n***THE INNER EXCEPTION***\n" +
                        innerExceptionMessage + "\n\n***THE STACK TRACE***\n" + stackTrace + "\n\n***THE SOURCE***\n" + source
                };

            Attachment attachment = new Attachment(fileName);
            message.Attachments.Add(attachment);

            message.To.Add("PSchaller@wwCares.org");
            message.To.Add("HDesk@wwCares.org");
            smtpClient.Send(message);
        }
        catch
        {
        }
    }
도움이 되었습니까?

해결책

팔라딘, 당신은 그것을 조금 더 잘 진단해야 할 것입니다. 그러면 혼자서 찾을 수 있습니다. 그래서 나는 다음과 같은 질문을합니다. "무슨 일이 일어나고 있는지 알아내는 방법은 무엇입니까?"

  1. 가능한 몇 가지 과정을 제거하십시오. 다시 설치 (및 도메인 사용자에 의해). 다른 사용자를 위해 설치된 것을 실행하려고하지 않았습니까?

  2. (약간 숨겨진) 설치 폴더를 찾고 모든 어셈블리가 있는지 확인하십시오.

  3. 앱이 전혀로드 되었습니까? TaskManager를 사용하십시오.

  4. 로드되면 sytem.diagnostics.debug.print ()로 진단 로깅을 추가하십시오. 출력을 볼 수 있습니다 디버그 뷰.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top