Top > OOoBasic > Generic > sendmail

メールの作成 Edit

OpenOffice.org から簡単なメールを作成して,メールクライアントを使ってメールを送信することができます。これは,ファイルメニューの送信からメールを作成することと同じです。

SimpleSystemMail サービス Edit

メールの作成には com.sun.star.system.SimpleSystemMail サービスを利用します。サービスをインスタンス化するためにいつものように createUnoService ランタイム関数を使用します。

Dim oSimpleSystemMail As Object
  oSimpleSystemMail = createUnoService("com.sun.star.system.SimpleSystemMail")

メールクライアントの取得 Edit

メールクライアントをシステムから取得するために SimpleSystemMail サービスの querySimpleMailClient メソッドを使用します。

Dim oSimpleMailClient As Object
  oSimpleMailClient = oSimpleSystemMail.querySimpleMailClient()

このメールクライアントを使用してメールを作成します。

メッセージ Edit

SimpleMailClient からメールを作成します。createSimpleMailMessage メソッドを使います。

Dim oSimpleMailMassage As Object
  oSimpleMailMessage = oSimpleMailClient.createSimpleMailMessage()

この SimpleMailMessage オブジェクトに対して,送信者や題名などを設定します。

送信者 Edit

受信者の設定には setOriginator メソッドを使います。メソッドの引数は string 型でのメールのアドレスです。

oSimpleMailMessage.setOriginator("hoge@hogehoge.org")

取得には getOriginator メソッドを使います。

受信者 Edit

送信者の設定には setRecipient メソッドを使います。引数は string 型のメールアドレスを取ります。

oSimpleMailMessage.setRecipient("hoge@hohoge.org")

送信者の取得には getRecipient メソッドを使います。

題名 Edit

メールの題名を設定するには setSubject メソッドを使います。メッセージの題名をメソッドの引数に指定します。

oSimpleMailMessage.setSubject("Mail Subject")

題名の取得には getSubject メソッドを使います。

CC Edit

メールの CC 受信者としての設定は setCcRecipient メソッドを使います。

BCC Edit

メールの BCC 受信者を設定するには setBccRecipient メソッドを使います。

添付ファイル Edit

添付ファイルの設定には setAttachement メソッドを使います。このメソッドの引数には配列として添付ファイルのパスを与えます。

Dim aFile() As String
  aFile() = Array("file:///C:/usr/test.txt")
  oSimpleMailMessage.setAttachement( aFile() )

メッセージの送信 Edit

メッセージの送信は sendSimpleMailMessage メソッドで行います。メソッドの引数には SimpleMailMessage およびフラッグを与えます。二つ目の引数のフラッグには com.sun.star.system.SimpleMailClientFlags 定数を使って指定します。このフラッグで指定するのはメールクライアントの動作です。

SimpleMailClientFlags
DEFAULTSデフォルト設定を使用
NO_USER_INTERFACEユーザーインターフェースの表示なしでそのままメッセージを送信する
NO_LOGON_DIALOGログオンダイアログが必要なときにダイアログを表示しない

Edit

REM  *****  BASIC  *****

Sub Main
Dim oSimpleCommandMail As Object
Dim oSimpleMailClient As Object
Dim oSimpleMailMessage As Object
Dim aFile() As String

  oSimpleCommandMail = createUnoService("com.sun.star.system.SimpleSystemMail")
  oSimpleMailClient = oSimpleCommandMail.querySimpleMailClient()
  oSimpleMailMessage = oSimpleMailClient.createSimpleMailMessage()
  'DbgInfo2sheet(oSimpleMailMessage)
  aFile() = Array("file:///C:/usr/test.txt")
  With oSimpleMailMessage
    .setRecipient( "hermione s41.xrea.com" )
    '.Originator = "hermione s41.xrea.com"
    .setSubject( "OpenOffice.org Mail" )
    '.setAttachement( aFile() )
  End With
  oSimpleMailClient.sendSimpleMailMessage(_
    oSimpleMailMessage,com.sun.star.system.SimpleMailClientFlags.DEFAULTS)
End Sub

OpenOffice.org だけではメールを送信できず,ほかのメーラーアプリケーションが必要です。メーラーアプリケーションに依存してメールを送信します。


Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes