OutlookManager (Mail)

참고

  • 신플(GSTPlatform), 구플(JPlatform) 모두 사용 가능

  • .NET Framework 4.0 이상, Microsoft Office Outlook이 설치된 PC에서 사용 가능

Outlook 미설치 PC에서 메서드 호출시 예외 발생 화면

1. 어셈블리 참조

  • 메뉴 폼에 GSTBrowser가 설치된 폴더의 "GST.Platform.OutlookInterface.dll" 어셈블리를 참조로 등록

2. Method : SendMail

  • Outlook 응용 프로그램에 등록된 계정 정보를 참조하여 전자 메일 발송

  • Parameters

    • string[] toMails : 받는 메일 주소

    • string toMails : 받는 메일 주소

    • string subject : 제목

    • string body : 내용

    • string[] attachmentPaths : 첨부파일(경로)

public static void SendMail(string[] toMails, string subject, string body, string[] attachmentPaths);

public static void SendMail(string toMails, string subject, string body, string[] attachmentPaths);

받는 주소(toMails) 매개변수 예시

  • 받는 메일 주소끼리는 세미콜론(;)으로 구분한다.

  • 주소의 받는 사람 이름을 포함할때는 "이름 <메일주소>"와 같은 형태로 입력한다.

string mails = "사용자1<first_user@mail.com>; 사용자2<second_user@mail.com>;";

string[] mails = new string[]
{
    "사용자1<first_user@mail.com>",
    "사용자2<second_user@mail.com>"
};

Example

private void SendMail()
{
    // 사용자 정보에 등록된 전체 메일 주소
    string query = @"
        SELECT user_name + '<' + emp_email + '>' as mail
        FROM sysUserMaster
        WHERE emp_email <> ''
        AND rtrchk <> 'Y'";

    ResultSet result = ExecuteSql(query); // 구플) CommonExecuteSQL(query);
    
    if ((result?.ResultDataSet?.Tables?.Count ?? 0) == 0)
    {
        return;
    }
            
    DataTable resultTable = result.ResultDataSet.Tables[0];

    string[] mails = resultTable.Rows
        .Cast<DataRow>()
        .Select(x => x.GetValue("mail")?.ToString() ?? string.Empty)?
        .ToArray() ?? new string[0];

    try
    {
        WaitFormEx.Show(this); // 구플) ShowWaitForm(true);
        OutlookManager.SendMail(mails, txtSubject.Text, txtBody.Text, null);
    }    
    finally
    {
        WaitFormEx.Close(); // 구플) ShowWaitForm(false);
    }
}

Outlook 계정 등록

계정 선택 화면

프로필 등록

새 프로필 이름 등록
[수동 설정 또는 추가 서버 유형] 선택
[POP 또는 IMAP] 선택
메일 정보 입력
이전 화면에서 [기타 설정] 옵션 클릭 - 보내는 메일 서버 설정
고급 탭에서 포트 확인
계정 설정 테스트
완료

Last updated

Was this helpful?