You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
515 lines
20 KiB
515 lines
20 KiB
Imports System.Net.Mail
|
|
Imports C1.Win.C1TrueDBGrid
|
|
Imports DevComponents.AdvTree
|
|
'Imports Gnostice.Documents.Controls.WinForms
|
|
'Imports Gnostice.Documents
|
|
Public Class clsDokumente
|
|
Dim licenseKey As String = "6F09-41FA-5E5E-101F-E577-BDD0-1BB8-3EFB-3081-2E1F-5264-3475"
|
|
|
|
Dim dbDokumente As New clsDB
|
|
Dim m_patientnr As Integer
|
|
Property Patientnr As Integer
|
|
Get
|
|
Return m_patientnr
|
|
|
|
|
|
End Get
|
|
Set(value As Integer)
|
|
m_patientnr = value
|
|
|
|
End Set
|
|
End Property
|
|
Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked
|
|
|
|
End Sub
|
|
|
|
Sub New()
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Public Sub refreshdata()
|
|
Gnostice.Documents.Framework.ActivateLicense(licenseKey)
|
|
Me.C1Dokumente.AllowDrop = True
|
|
If Me.treestruktur.Nodes.Count = 0 Then
|
|
Get_tree()
|
|
Me.treestruktur.SelectedNode = Me.treestruktur.Nodes(0)
|
|
End If
|
|
|
|
End Sub
|
|
Sub Refresh_Grid()
|
|
Update_Grid()
|
|
End Sub
|
|
Sub Get_tree()
|
|
Dim db As New clsDB
|
|
db.Get_Tabledata("DMS_Struktur", "", "Select * from dms_struktur where aktiv=1")
|
|
Load_Treeview(db.dsDaten, Me.treestruktur)
|
|
End Sub
|
|
|
|
Private Sub Load_Treeview(ByVal oSourceData As DataSet, ByRef tree As AdvTree)
|
|
If Not (oSourceData Is Nothing) Then
|
|
Dim oView As DataView = oSourceData.Tables(0).DefaultView
|
|
Dim oTable As DataTable = oView.Table
|
|
Dim oDS As DataSet = New DataSet()
|
|
oDS.Tables.Add(oTable.Copy())
|
|
|
|
If oDS.Relations.Contains("SelfRefenceRelation") = False Then
|
|
oDS.Relations.Add("SelfRefenceRelation",
|
|
oDS.Tables(0).Columns("eintragnr"),
|
|
oDS.Tables(0).Columns("parentid"))
|
|
End If
|
|
oTable.Dispose()
|
|
oTable = Nothing
|
|
LoadTreeView(oDS, tree)
|
|
oDS.Dispose()
|
|
oDS = Nothing
|
|
End If
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Tree aufbauen
|
|
''' </summary>
|
|
''' <param name="oDS"></param>
|
|
''' <param name="oTreeview"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub LoadTreeView(ByVal oDS As DataSet, ByRef oTreeview As AdvTree)
|
|
'Dim oTreeView As TreeView = New TreeView()
|
|
Dim oDataRow As DataRow
|
|
For Each oDataRow In oDS.Tables(0).Rows
|
|
If Not oDataRow.IsNull("Parentid") Then
|
|
If oDataRow.Item("Parentid") = 0 Then
|
|
Dim oNode As New DevComponents.AdvTree.Node
|
|
oNode.Text = oDataRow("Bezeichnung").ToString()
|
|
oNode.Tag = oDataRow("eintragnr").ToString
|
|
oNode.ImageIndex = 0
|
|
oNode.ImageIndex = 0
|
|
oTreeview.Nodes.Add(oNode)
|
|
RecursivelyLoadTree(oDataRow, oNode)
|
|
End If
|
|
End If
|
|
Next oDataRow
|
|
oDS.Dispose()
|
|
oDS = Nothing
|
|
End Sub
|
|
|
|
''' <summary>
|
|
''' Child-Nodes hinzufügen
|
|
''' </summary>
|
|
''' <param name="oDataRow"></param>
|
|
''' <param name="oNode"></param>
|
|
''' <remarks></remarks>
|
|
Private Sub RecursivelyLoadTree(ByVal oDataRow As DataRow, ByRef oNode As DevComponents.AdvTree.Node)
|
|
Dim oChildRow As DataRow
|
|
For Each oChildRow In oDataRow.GetChildRows("SelfRefenceRelation")
|
|
Dim oChildNode As New DevComponents.AdvTree.Node()
|
|
oChildNode.Text = oChildRow("Bezeichnung").ToString()
|
|
oChildNode.Tag = oChildRow("eintragnr").ToString()
|
|
If oChildRow("eintragnr") = 0 Then
|
|
oChildNode.ImageIndex = 0
|
|
oChildNode.ImageIndex = 0
|
|
Else
|
|
oChildNode.ImageIndex = 1
|
|
oChildNode.ImageIndex = 1
|
|
End If
|
|
oNode.Nodes.Add(oChildNode)
|
|
RecursivelyLoadTree(oChildRow, oChildNode)
|
|
Next oChildRow
|
|
End Sub
|
|
|
|
Private Sub tsbtnnew_Click(sender As Object, e As EventArgs) Handles tsbtnnew.Click
|
|
Dim f As New DokumentDetail(Me.Patientnr, Me.treestruktur.SelectedNode.Tag)
|
|
f.ShowDialog()
|
|
Me.treestruktur_SelectionChanged(sender, e)
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub treestruktur_SelectionChanged(sender As Object, e As EventArgs) Handles treestruktur.SelectionChanged
|
|
Update_Grid()
|
|
End Sub
|
|
Sub Update_Grid()
|
|
|
|
dbDokumente.Get_Tabledata("Dokumente", "", "Select * from dms_dokument where dms_strukturnr=" + Me.treestruktur.SelectedNode.Tag.ToString + " and keyvalue=" + Me.Patientnr.ToString + " and aktiv=1")
|
|
Me.C1Dokumente.DataSource = Nothing
|
|
Me.C1Dokumente.DataSource = dbDokumente.dsDaten.Tables(0)
|
|
Me.C1Dokumente.DataMember = dbDokumente.dsDaten.Tables(0).TableName
|
|
Dim spalten As New Tabellenspalte
|
|
spalten.Spaltentitel_aktualisieren(Me.C1Dokumente, "DMS_Dokument", dbDokumente.dsDaten.Tables(0))
|
|
If Me.C1Dokumente.Splits(0).Rows.Count = 0 Then
|
|
Me.DocumentViewer1.Visible = False
|
|
Else
|
|
Me.DocumentViewer1.Visible = True
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Private Sub C1Dokumente_DoubleClick(sender As Object, e As EventArgs) Handles C1Dokumente.DoubleClick
|
|
Try
|
|
If C1Dokumente.Columns("indb").Value = "True" Then
|
|
Dim d As New clsDok
|
|
Dim s As String = d.Get_Dokument(Me.C1Dokumente.Columns("nreintrag").Value)
|
|
Process.Start(s)
|
|
Else
|
|
Process.Start(Me.C1Dokumente.Columns("pfad").Value)
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub NeuesDokumentHinzufügenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NeuesDokumentHinzufügenToolStripMenuItem.Click
|
|
Dim f As New DokumentDetail(Me.Patientnr, Me.treestruktur.SelectedNode.Tag)
|
|
f.treestruktur.ImageList = Me.treestruktur.ImageList
|
|
f.treestruktur.SelectedNode = Me.treestruktur.SelectedNode
|
|
f.ShowDialog()
|
|
Me.treestruktur_SelectionChanged(sender, e)
|
|
End Sub
|
|
|
|
Private Sub DokumentLöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DokumentLöschenToolStripMenuItem.Click
|
|
Try
|
|
Dim i As Integer = C1Dokumente.Columns("nreintrag").Value
|
|
If MsgBox("Gewähltes Dokument löschen?", vbYesNo + vbQuestion) = vbYes Then
|
|
Dim db As New clsDB
|
|
db.Get_Tabledata("DMS_Dokument", "where nreintrag=" + C1Dokumente.Columns("nreintrag").Value.ToString, "")
|
|
db.dsDaten.Tables(0).Rows(0).Item("Aktiv") = 0
|
|
db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now
|
|
db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser
|
|
db.Update_Data()
|
|
db.Dispose()
|
|
treestruktur_SelectionChanged(sender, e)
|
|
End If
|
|
Catch
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub DokumentAnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DokumentAnzeigenToolStripMenuItem.Click
|
|
Me.C1Dokumente_DoubleClick(sender, e)
|
|
End Sub
|
|
|
|
Private Sub DokumentinformationenBearbeitenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DokumentinformationenBearbeitenToolStripMenuItem.Click
|
|
Try
|
|
Dim f As New DokumentDetail(Me.Patientnr, Me.treestruktur.SelectedNode.Tag, Me.C1Dokumente.Columns("nreintrag").Value, True)
|
|
f.treestruktur.ImageList = Me.treestruktur.ImageList
|
|
f.treestruktur.SelectedNode = Me.treestruktur.SelectedNode
|
|
f.ShowDialog()
|
|
Me.treestruktur_SelectionChanged(sender, e)
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub Form1_DragDrop(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragDrop
|
|
Dim files() As String = e.Data.GetData(DataFormats.FileDrop)
|
|
For Each path In files
|
|
Dim f As New DokumentDetail(Me.Patientnr, Me.treestruktur.SelectedNode.Tag)
|
|
f.txtPath.Text = path
|
|
f.txtBezeichnung.Text = System.IO.Path.GetFileName(path)
|
|
f.dtTermin.Value = Now
|
|
f.ShowDialog()
|
|
Next
|
|
End Sub
|
|
|
|
Private Sub Form1_DragEnter(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragEnter
|
|
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
|
|
e.Effect = DragDropEffects.Copy
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub C1Dokumente_DataSourceChanged(sender As Object, e As EventArgs) Handles C1Dokumente.DataSourceChanged
|
|
|
|
End Sub
|
|
|
|
Private Sub C1Dokumente_KeyDown(sender As Object, e As KeyEventArgs) Handles C1Dokumente.KeyDown
|
|
If e.Modifiers = Keys.Control AndAlso e.KeyCode = Keys.V Then
|
|
Dim iData As IDataObject = Clipboard.GetDataObject()
|
|
If iData.GetDataPresent(DataFormats.FileDrop) Then
|
|
Dim clipbrd As String() = DirectCast(iData.GetData(DataFormats.FileDrop),
|
|
String())
|
|
For Each path In clipbrd
|
|
Dim f As New DokumentDetail(Me.Patientnr, Me.treestruktur.SelectedNode.Tag)
|
|
f.txtPath.Text = path
|
|
f.txtBezeichnung.Text = System.IO.Path.GetFileName(path)
|
|
f.dtTermin.Value = Now
|
|
f.treestruktur.ImageList = Me.treestruktur.ImageList
|
|
f.treestruktur.SelectedNode = Me.treestruktur.SelectedNode
|
|
f.Massenimport = True
|
|
f.ShowDialog()
|
|
Next
|
|
End If
|
|
Me.treestruktur_SelectionChanged(sender, e)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub C1Dokumente_RowColChange(sender As Object, e As RowColChangeEventArgs) Handles C1Dokumente.RowColChange
|
|
Try
|
|
|
|
If C1Dokumente.Columns("InDB").Value = "False" Then
|
|
Me.DocumentViewer1.LoadDocument(C1Dokumente.Columns("Pfad").Value)
|
|
Else
|
|
Dim dok As New clsDok
|
|
|
|
Dim ms As System.IO.MemoryStream = dok.Get_Dokument_stram(Me.C1Dokumente.Columns("nreintrag").Value)
|
|
Me.DocumentViewer1.LoadDocument(ms)
|
|
End If
|
|
Catch
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Private Sub tsActSize_Click(sender As Object, e As EventArgs) Handles tsActSize.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.Zoom.ZoomMode = Gnostice.Documents.Controls.WinForms.ZoomMode.ActualSize
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub tsFitPage_Click(sender As Object, e As EventArgs) Handles tsFitPage.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.Zoom.ZoomMode = Gnostice.Documents.Controls.WinForms.ZoomMode.FitPage
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub tsFitWidth_Click(sender As Object, e As EventArgs) Handles tsFitWidth.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.Zoom.ZoomMode = Gnostice.Documents.Controls.WinForms.ZoomMode.FitWidth
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub tsZoomOut_Click(sender As Object, e As EventArgs) Handles tsZoomOut.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.ZoomOut()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub tsZoomIn_Click(sender As Object, e As EventArgs) Handles tsZoomIn.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.ZoomIn()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnFirstPage_Click(sender As Object, e As EventArgs) Handles btnFirstPage.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.FirstPage()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnPrvPage_Click(sender As Object, e As EventArgs) Handles btnPrvPage.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.PreviousPage()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnNxtPage_Click(sender As Object, e As EventArgs) Handles btnNxtPage.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.NextPage()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnLastPage_Click(sender As Object, e As EventArgs) Handles btnLastPage.Click
|
|
If DocumentViewer1.IsDocumentLoaded Then
|
|
DocumentViewer1.LastPage()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
|
|
DocumentViewer1.RotatePagesAntiClockwise90()
|
|
End Sub
|
|
|
|
Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
|
|
DocumentViewer1.RotatePagesClockwise90()
|
|
End Sub
|
|
|
|
Private Sub txtGoToPage_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles txtGoToPage.KeyDown
|
|
Select Case e.KeyCode
|
|
|
|
Case Keys.NumPad0, Keys.NumPad1, Keys.NumPad2, Keys.NumPad3, Keys.NumPad4, Keys.NumPad5,
|
|
Keys.NumPad6, Keys.NumPad7, Keys.NumPad8, Keys.NumPad9, Keys.Delete, Keys.[End],
|
|
Keys.Home, Keys.Down, Keys.Up, Keys.Left, Keys.Right, Keys.Back
|
|
e.SuppressKeyPress = False
|
|
Exit Select
|
|
|
|
Case Keys.D0, Keys.D1, Keys.D2, Keys.D3, Keys.D4, Keys.D5,
|
|
Keys.D6, Keys.D7, Keys.D8, Keys.D9
|
|
If e.Shift Then
|
|
e.SuppressKeyPress = True
|
|
Else
|
|
e.SuppressKeyPress = False
|
|
End If
|
|
Exit Select
|
|
|
|
Case Keys.Enter
|
|
e.SuppressKeyPress = False
|
|
If txtGoToPage.Text.Trim() <> "" Then
|
|
DocumentViewer1.GoToPage(Convert.ToInt32(txtGoToPage.Text))
|
|
End If
|
|
Exit Select
|
|
Case Else
|
|
|
|
e.SuppressKeyPress = True
|
|
Exit Select
|
|
End Select
|
|
|
|
End Sub
|
|
Private Sub txtZoom_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles txtZoom.KeyDown
|
|
Select Case e.KeyCode
|
|
|
|
Case Keys.NumPad0, Keys.NumPad1, Keys.NumPad2, Keys.NumPad3, Keys.NumPad4, Keys.NumPad5,
|
|
Keys.NumPad6, Keys.NumPad7, Keys.NumPad8, Keys.NumPad9, Keys.Delete, Keys.[End],
|
|
Keys.Home, Keys.Down, Keys.Up, Keys.Left, Keys.Right, Keys.Back
|
|
e.SuppressKeyPress = False
|
|
Exit Select
|
|
|
|
Case Keys.D0, Keys.D1, Keys.D2, Keys.D3, Keys.D4, Keys.D5,
|
|
Keys.D6, Keys.D7, Keys.D8, Keys.D9
|
|
If e.Shift Then
|
|
e.SuppressKeyPress = True
|
|
Else
|
|
e.SuppressKeyPress = False
|
|
End If
|
|
Exit Select
|
|
|
|
Case Keys.Enter
|
|
e.SuppressKeyPress = False
|
|
DocumentViewer1.Zoom.ZoomPercent = Double.Parse(txtZoom.Text)
|
|
Exit Select
|
|
Case Else
|
|
|
|
e.SuppressKeyPress = True
|
|
Exit Select
|
|
End Select
|
|
End Sub
|
|
|
|
Private Sub DokumentEinemAnderenPartnerZuordnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DokumentEinemAnderenPartnerZuordnenToolStripMenuItem.Click
|
|
Dim f As New frmSuche
|
|
f.Dokumentsuche = True
|
|
f.ShowDialog()
|
|
If f.DialogResult = DialogResult.OK Then
|
|
Dim db As New clsDB
|
|
db.Get_Tabledata("Dokument", "", "Select * from dms_dokument where nreintrag=" + Me.C1Dokumente.Columns("nreintrag").Value.ToString)
|
|
db.dsDaten.Tables(0).Rows(0).Item("keyvalue") = f.Key
|
|
db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now
|
|
db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser
|
|
db.Update_Data()
|
|
Me.treestruktur_SelectionChanged(sender, e)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub DokumentExportierenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DokumentExportierenToolStripMenuItem.Click
|
|
Try
|
|
If C1Dokumente.Columns("indb").Value = "True" Then
|
|
Me.SaveFileDialog1.FileName = C1Dokumente.Columns("pfad").Value
|
|
If Me.SaveFileDialog1.ShowDialog = DialogResult.OK Then
|
|
Dim fn As String
|
|
Dim dok As New clsDok
|
|
fn = dok.Get_Dokument(Me.C1Dokumente.Columns("nreintrag").Value)
|
|
System.IO.File.Copy(fn, SaveFileDialog1.FileName)
|
|
End If
|
|
|
|
|
|
Else
|
|
If Me.SaveFileDialog1.ShowDialog = DialogResult.OK Then
|
|
Dim fn As String
|
|
Dim dok As New clsDok
|
|
fn = Me.C1Dokumente.Columns("Pfad").Value
|
|
System.IO.File.Copy(fn, SaveFileDialog1.FileName)
|
|
End If
|
|
|
|
End If
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
End Sub
|
|
|
|
Private Sub PerMailVersendenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PerMailVersendenToolStripMenuItem.Click
|
|
Try
|
|
Dim db As New clsDB
|
|
Dim email As String
|
|
If Me.Patientnr > 49999 Then
|
|
db.Get_Tabledata("Email", "", "Select E_Mail from firma where nrfirma=" + Me.Patientnr.ToString)
|
|
Else
|
|
db.Get_Tabledata("Email", "", "Select E_Mail from privat where nrprivat=" + Me.Patientnr.ToString)
|
|
End If
|
|
Try
|
|
email = db.dsDaten.Tables(0).Rows(0).Item(0)
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
db.Dispose()
|
|
|
|
If C1Dokumente.Columns("indb").Value = "True" Then
|
|
Dim dok As New clsDok
|
|
test(email, dok.Get_Dokument(Me.C1Dokumente.Columns("nreintrag").Value))
|
|
' OpenEmail(email, "test", "test", dok.Get_Dokument(Me.C1Dokumente.Columns("nreintrag").Value))
|
|
Else
|
|
test(email, Me.C1Dokumente.Columns("Pfad").Value)
|
|
' OpenEmail(email, "", "", Me.C1Dokumente.Columns("Pfad").Value)
|
|
|
|
End If
|
|
|
|
Catch EX As Exception
|
|
MsgBox(EX.Message)
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Public Function OpenEmail(ByVal EmailAddress As String,
|
|
Optional ByVal Subject As String = "test",
|
|
Optional ByVal Body As String = "test",
|
|
Optional ByVal Attachments As String = "") _
|
|
As Boolean
|
|
|
|
Dim bAns As Boolean = True
|
|
Dim sParams As String
|
|
sParams = EmailAddress
|
|
If LCase(Strings.Left(sParams, 7)) <> "mailto:" Then _
|
|
sParams = "mailto:" & sParams
|
|
|
|
If Subject <> "" Then sParams = sParams &
|
|
"?subject=" & Subject
|
|
|
|
If Body <> "" Then
|
|
sParams = CStr(sParams & CStr(IIf(Subject = "", "?", "&")))
|
|
sParams = sParams & "body=" & Body
|
|
End If
|
|
|
|
If Attachments <> "" Then
|
|
'sParams = CStr(sParams & CStr(IIf(Body = "", "?", "&")))
|
|
sParams = sParams & "attachments=" & Attachments
|
|
End If
|
|
|
|
Try
|
|
|
|
System.Diagnostics.Process.Start(sParams)
|
|
|
|
Catch
|
|
bAns = False
|
|
End Try
|
|
|
|
Return bAns
|
|
|
|
End Function
|
|
|
|
Sub test(email As String, ByVal attachmentfile As String)
|
|
'string builder used for concatination
|
|
Dim MsgBuilder As New System.Text.StringBuilder
|
|
MsgBuilder.Append("<A href=""mailto: melroy@testmail.com"">mailto:melroy@testmail.com</A>")
|
|
'MsgBuilder.Append("<A href='mailto:&cc=testcc@testcc.com,testcc1@testcc.com'>&cc=testcc@testcc.com,testcc1@testcc.com</A>")
|
|
'MsgBuilder.Append("<A href='mailto:&bcc=testcc@testbcc.com,testcc1@testbcc.com'>&bcc=testcc@testbcc.com,testcc1@testbcc.com</A>")
|
|
MsgBuilder.Append("&subject=this is test subject")
|
|
MsgBuilder.Append("&body=this is test body")
|
|
ExecuteFile(MsgBuilder.ToString)
|
|
End Sub
|
|
|
|
Private Function ExecuteFile(ByVal FileName As String) As Boolean
|
|
Dim myProcess As New Process
|
|
myProcess.StartInfo.FileName = FileName
|
|
myProcess.StartInfo.UseShellExecute = True
|
|
myProcess.StartInfo.RedirectStandardOutput = False
|
|
myProcess.Start()
|
|
myProcess.Dispose()
|
|
End Function
|
|
|
|
End Class
|
|
|