initial commit
This commit is contained in:
6
VMSMonitor/App.config
Normal file
6
VMSMonitor/App.config
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<configuration>
|
||||
<startup>
|
||||
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup>
|
||||
</configuration>
|
||||
144
VMSMonitor/ArinXMl.vb
Normal file
144
VMSMonitor/ArinXMl.vb
Normal file
@@ -0,0 +1,144 @@
|
||||
Imports System.Xml
|
||||
|
||||
Public Class ArinXML
|
||||
Private File As String
|
||||
Private vDocu As XmlDocument = Nothing
|
||||
Private nsmgr As XmlNamespaceManager
|
||||
Public Root As XmlElement
|
||||
|
||||
Public ReadOnly Property Docu() As XmlDocument
|
||||
Get
|
||||
Return Me.vDocu
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Filename As String
|
||||
Get
|
||||
Return Me.File
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub New(ByVal Filename As String)
|
||||
Me.File = Filename
|
||||
If Exist() Then '//파일이 존재하면 도큐먼트반환
|
||||
Me.vDocu = New XmlDocument
|
||||
nsmgr = New XmlNamespaceManager(New Xml.NameTable)
|
||||
nsmgr.AddNamespace("x", "http://tindevil.com")
|
||||
Try
|
||||
Me.vDocu.Load(Filename)
|
||||
Root = vDocu.DocumentElement
|
||||
Catch ex As Exception
|
||||
Me.vDocu = Nothing
|
||||
Me.Root = Nothing
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub New(ByVal docu As Xml.XmlDocument)
|
||||
Me.vDocu = docu
|
||||
Me.File = My.Application.Info.DirectoryPath & "\temp.xml"
|
||||
nsmgr = New XmlNamespaceManager(New Xml.NameTable)
|
||||
nsmgr.AddNamespace("x", "http://tindevil.com")
|
||||
Root = vDocu.DocumentElement
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
''' 파일존재여부
|
||||
''' </summary>
|
||||
''' <returns></returns>
|
||||
''' <remarks></remarks>
|
||||
Public Function Exist() As Boolean
|
||||
If Not vDocu Is Nothing Then Return True
|
||||
Return System.IO.File.Exists(Me.File)
|
||||
End Function
|
||||
|
||||
|
||||
Public Sub CreateFile()
|
||||
'//주어진파일명으로 기본파일을 생성한다.
|
||||
Dim NewXml As New System.Text.StringBuilder
|
||||
NewXml.AppendLine("<?xml version='1.0' encoding='KSC5601'?>")
|
||||
NewXml.AppendLine("<tindevil xmlns='http://tindevil.com'> ")
|
||||
NewXml.AppendLine("</tindevil>")
|
||||
If System.IO.File.Exists(Me.File) Then System.IO.File.Delete(Me.File)
|
||||
My.Computer.FileSystem.WriteAllText(Me.File, NewXml.ToString.Replace("'", Chr(&H22)), False)
|
||||
Me.vDocu = New XmlDocument
|
||||
Me.vDocu.Load(Me.File)
|
||||
nsmgr = New XmlNamespaceManager(New Xml.NameTable)
|
||||
nsmgr.AddNamespace("x", "http://tindevil.com")
|
||||
Root = vDocu.DocumentElement
|
||||
End Sub
|
||||
|
||||
Public Function Read(ByVal appkey As String, ByVal subkey As String, Optional ByVal defaltvalue As String = "", Optional ByVal Nullvalue As String = "") As String '//변수초기화
|
||||
'//파일이없을경우 빈값을 반환합니다.
|
||||
If Exist() = False Then Return ""
|
||||
Dim L As XmlElement = Me.Root.SelectSingleNode(appkey, nsmgr) '//appkey를 먼저 조회한다.
|
||||
If L Is Nothing Then Return ""
|
||||
Dim C As XmlElement = L.SelectSingleNode(subkey, nsmgr)
|
||||
If C Is Nothing Then Return ""
|
||||
Return C.InnerText
|
||||
End Function
|
||||
|
||||
Public Function Get_NameSpace() As XmlNamespaceManager
|
||||
Return Me.nsmgr
|
||||
End Function
|
||||
Public Function NS() As XmlNamespaceManager
|
||||
Return Me.nsmgr
|
||||
End Function
|
||||
|
||||
Public Function CreateElement(ByVal name As String) As XmlElement
|
||||
Return Me.Docu.CreateElement(name, Me.NS.DefaultNamespace)
|
||||
End Function
|
||||
Public Function GetNode(ByVal appkey As String) As XmlElement
|
||||
'//파일이없을경우 빈값을 반환합니다.
|
||||
If Docu Is Nothing Then Return Nothing
|
||||
Return Me.Root.SelectSingleNode(appkey, nsmgr) '//appkey를 먼저 조회한다.
|
||||
End Function
|
||||
Public Function GetNodes(ByVal appkey As String) As Xml.XmlNodeList
|
||||
'//파일이없을경우 빈값을 반환합니다.
|
||||
If Docu Is Nothing Then Return Nothing
|
||||
Dim L As XmlNodeList = Me.Root.SelectNodes(appkey, nsmgr) '//appkey를 먼저 조회한다.
|
||||
Return L
|
||||
End Function
|
||||
|
||||
Public Property Data(ByVal appkey As String, ByVal subkey As String, Optional ByVal defaltvalue As Object = "", Optional ByVal trim As Boolean = False) As String
|
||||
Get
|
||||
'//파일이없을경우 빈값을 반환합니다.
|
||||
If Exist() = False Then Return defaltvalue
|
||||
Dim L As XmlElement = Me.Root.SelectSingleNode(appkey, nsmgr) '//appkey를 먼저 조회한다.
|
||||
If L Is Nothing Then Return defaltvalue
|
||||
Dim C As XmlElement = L.SelectSingleNode(subkey, nsmgr)
|
||||
If C Is Nothing Then Return defaltvalue
|
||||
If trim Then
|
||||
Return C.InnerText.Trim
|
||||
Else
|
||||
Return C.InnerText
|
||||
End If
|
||||
|
||||
End Get
|
||||
Set(ByVal value As String)
|
||||
'//파일이없을경우 빈값을 반환합니다.
|
||||
|
||||
If Exist() = False Then Return
|
||||
Dim L As XmlElement = Me.Root.SelectSingleNode(appkey, nsmgr) '//appkey를 먼저 조회한다.
|
||||
If L Is Nothing Then '//만들어야한다.
|
||||
L = Me.Docu.CreateElement(appkey)
|
||||
Me.Root.AppendChild(L)
|
||||
End If
|
||||
Dim C As XmlElement = L.SelectSingleNode(subkey, nsmgr)
|
||||
If C Is Nothing Then '//만들어야한다.
|
||||
C = Me.Docu.CreateElement(subkey)
|
||||
C.InnerText = value
|
||||
L.AppendChild(C)
|
||||
Else
|
||||
C.InnerText = value
|
||||
End If
|
||||
Me.Docu.Save(Me.File)
|
||||
'MsgBox(value)
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public Sub Save()
|
||||
Me.Docu.Save(Me.File)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
172
VMSMonitor/Form1.Designer.vb
generated
Normal file
172
VMSMonitor/Form1.Designer.vb
generated
Normal file
@@ -0,0 +1,172 @@
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class Form1
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form은 Dispose를 재정의하여 구성 요소 목록을 정리합니다.
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
Try
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
Finally
|
||||
MyBase.Dispose(disposing)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Windows Form 디자이너에 필요합니다.
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'참고: 다음 프로시저는 Windows Form 디자이너에 필요합니다.
|
||||
'수정하려면 Windows Form 디자이너를 사용하십시오.
|
||||
'코드 편집기를 사용하여 수정하지 마십시오.
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Me.components = New System.ComponentModel.Container()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
|
||||
Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
|
||||
Me.Timer2 = New System.Windows.Forms.Timer(Me.components)
|
||||
Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
|
||||
Me.bt_monitor = New System.Windows.Forms.ToolStripButton()
|
||||
Me.bt_run = New System.Windows.Forms.ToolStripButton()
|
||||
Me.bt_kill = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ProgressBar1 = New System.Windows.Forms.ProgressBar()
|
||||
Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
|
||||
Me.status_monitor = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.status_run = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.status_create = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.lb_msg = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.ToolStrip1.SuspendLayout()
|
||||
Me.StatusStrip1.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'Timer1
|
||||
'
|
||||
Me.Timer1.Interval = 1000
|
||||
'
|
||||
'Timer2
|
||||
'
|
||||
Me.Timer2.Interval = 1000
|
||||
'
|
||||
'ToolStrip1
|
||||
'
|
||||
Me.ToolStrip1.ImageScalingSize = New System.Drawing.Size(32, 32)
|
||||
Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.bt_monitor, Me.bt_run, Me.bt_kill, Me.ToolStripButton1})
|
||||
Me.ToolStrip1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.ToolStrip1.Name = "ToolStrip1"
|
||||
Me.ToolStrip1.Size = New System.Drawing.Size(496, 39)
|
||||
Me.ToolStrip1.TabIndex = 4
|
||||
Me.ToolStrip1.Text = "ToolStrip1"
|
||||
'
|
||||
'bt_monitor
|
||||
'
|
||||
Me.bt_monitor.Image = CType(resources.GetObject("bt_monitor.Image"), System.Drawing.Image)
|
||||
Me.bt_monitor.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.bt_monitor.Name = "bt_monitor"
|
||||
Me.bt_monitor.Size = New System.Drawing.Size(103, 36)
|
||||
Me.bt_monitor.Text = "모니터시작"
|
||||
'
|
||||
'bt_run
|
||||
'
|
||||
Me.bt_run.Enabled = False
|
||||
Me.bt_run.Image = CType(resources.GetObject("bt_run.Image"), System.Drawing.Image)
|
||||
Me.bt_run.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.bt_run.Name = "bt_run"
|
||||
Me.bt_run.Size = New System.Drawing.Size(93, 36)
|
||||
Me.bt_run.Text = "VPS 실행"
|
||||
'
|
||||
'bt_kill
|
||||
'
|
||||
Me.bt_kill.Enabled = False
|
||||
Me.bt_kill.Image = CType(resources.GetObject("bt_kill.Image"), System.Drawing.Image)
|
||||
Me.bt_kill.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.bt_kill.Name = "bt_kill"
|
||||
Me.bt_kill.Size = New System.Drawing.Size(117, 36)
|
||||
Me.bt_kill.Text = "VPS 강제종료"
|
||||
'
|
||||
'ToolStripButton1
|
||||
'
|
||||
Me.ToolStripButton1.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right
|
||||
Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton1.Name = "ToolStripButton1"
|
||||
Me.ToolStripButton1.Size = New System.Drawing.Size(115, 36)
|
||||
Me.ToolStripButton1.Text = "프로그램종료"
|
||||
'
|
||||
'ProgressBar1
|
||||
'
|
||||
Me.ProgressBar1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.ProgressBar1.Location = New System.Drawing.Point(0, 39)
|
||||
Me.ProgressBar1.Name = "ProgressBar1"
|
||||
Me.ProgressBar1.Size = New System.Drawing.Size(496, 93)
|
||||
Me.ProgressBar1.TabIndex = 5
|
||||
'
|
||||
'StatusStrip1
|
||||
'
|
||||
Me.StatusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.status_monitor, Me.status_run, Me.status_create, Me.lb_msg})
|
||||
Me.StatusStrip1.Location = New System.Drawing.Point(0, 110)
|
||||
Me.StatusStrip1.Name = "StatusStrip1"
|
||||
Me.StatusStrip1.Size = New System.Drawing.Size(496, 22)
|
||||
Me.StatusStrip1.TabIndex = 6
|
||||
Me.StatusStrip1.Text = "StatusStrip1"
|
||||
'
|
||||
'status_monitor
|
||||
'
|
||||
Me.status_monitor.Name = "status_monitor"
|
||||
Me.status_monitor.Size = New System.Drawing.Size(66, 17)
|
||||
Me.status_monitor.Text = "● Monitor"
|
||||
'
|
||||
'status_run
|
||||
'
|
||||
Me.status_run.Name = "status_run"
|
||||
Me.status_run.Size = New System.Drawing.Size(45, 17)
|
||||
Me.status_run.Text = "● VPS"
|
||||
'
|
||||
'status_create
|
||||
'
|
||||
Me.status_create.Name = "status_create"
|
||||
Me.status_create.Size = New System.Drawing.Size(44, 17)
|
||||
Me.status_create.Text = "● Run"
|
||||
'
|
||||
'lb_msg
|
||||
'
|
||||
Me.lb_msg.Name = "lb_msg"
|
||||
Me.lb_msg.Size = New System.Drawing.Size(53, 17)
|
||||
Me.lb_msg.Text = "Message"
|
||||
'
|
||||
'Form1
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 12.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.ClientSize = New System.Drawing.Size(496, 132)
|
||||
Me.Controls.Add(Me.StatusStrip1)
|
||||
Me.Controls.Add(Me.ProgressBar1)
|
||||
Me.Controls.Add(Me.ToolStrip1)
|
||||
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
|
||||
Me.MaximizeBox = False
|
||||
Me.Name = "Form1"
|
||||
Me.Text = "VPS STARTER"
|
||||
Me.ToolStrip1.ResumeLayout(False)
|
||||
Me.ToolStrip1.PerformLayout()
|
||||
Me.StatusStrip1.ResumeLayout(False)
|
||||
Me.StatusStrip1.PerformLayout()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout()
|
||||
|
||||
End Sub
|
||||
Friend WithEvents Timer1 As System.Windows.Forms.Timer
|
||||
Friend WithEvents Timer2 As System.Windows.Forms.Timer
|
||||
Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip
|
||||
Friend WithEvents bt_monitor As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents bt_run As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents bt_kill As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents ProgressBar1 As System.Windows.Forms.ProgressBar
|
||||
Friend WithEvents StatusStrip1 As System.Windows.Forms.StatusStrip
|
||||
Friend WithEvents lb_msg As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents status_run As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents status_monitor As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents status_create As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton
|
||||
|
||||
End Class
|
||||
284
VMSMonitor/Form1.resx
Normal file
284
VMSMonitor/Form1.resx
Normal file
@@ -0,0 +1,284 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="Timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="Timer2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>107, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ToolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>197, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="bt_monitor.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAMpSURBVFhH7ZfLS1RRHMe1rCCkqAwiqkV/hhtbutBQUHyC
|
||||
gWCaZas22jg+Z8zMHNTRZBAbRB1d2aaFq9z6FoUW4trw/QZRfp3PoTOMwhmtmYEWCl/OY7738/3Onbl3
|
||||
rnFxl3+XZ+B/OgMjIyNeJYmxvNb3PDw8LMfHx3JychITwSbDWiAQCMjR0ZEcHBzI4eFhVAUTNhnWAoOD
|
||||
g7K/vy87OzuSnJwsz9PToyJYMGGTYS0wMDAQLJCWliavysqkrLQ0IsGAZQqQYS3Q39+vC2xvb0t2dra8
|
||||
r6qSaocjIsGABRM2GdYCfr9f9vb2tDknJydqBWDBhE2GtUBfX582bW1tSX5+ftQKwIIJmwxrgd7eXm3a
|
||||
3NyUwsLCiE596EcHCyZsMqwFfD6f7O7uysbGhrwoKpLamppgiZWVlX8qBAMWTNhkWAv09PQECxQXF0uT
|
||||
261LGFEidH2ROQxYpgAZ1gLdXV26wPr6upSUlIinrU1cjY2nRImze+HWMGDBhE2GtYC3s1Nfr2tra/ra
|
||||
/9LdLR+bm4MiPHR9kTkMWDBhk2Et0N7erk2rq6vyurxcvqpvLO8AEW7mZs3e2f1QD3MYsGDCJsNawOPx
|
||||
aNPi4qK8raiQwNCQbhyJYMCCCZsMa4HPra3atLCwIFWVlTI6OirfIhQMWDBhk2Et8KmlRd+x5ufnpaG+
|
||||
/q8/b9t3AhZM2GRYCwDANDc3pw+IpmDCJsNa4ENTkzbNzMzI7OxsVAUTNhnWAm6XS9+zp6endQnU0dFx
|
||||
SmY/3Oj2v5Fn7xKF0fhgwibDWqCxoUGbJicnZWpqSovnQ3O5MTf74cYK31P5+eulMBofTNhkWAvU19Vp
|
||||
08TEhC6BxsbGTsnshxsDP0rF9T1BGI0PJmwyrAXqamv1DWN8fDwmgk2GtUCN0ynLy8uytLQUE8Emw1rA
|
||||
6XB4ndXVElOpjPP+F4p3Op1X1C/YNfUwebOgoOCWeqK5k5WVdTcvLy9JPd89yMzMfKQesx6r+RMj1rm5
|
||||
uQ+V735GRsY9jlGv3VZKTE1NvaHGqyo4/rzw0Ncx6zJGQFJSUhIoh9T6uhFr5UvAE3rMn1Br8G+IV7/l
|
||||
/QuMLAAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="bt_run.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAANwSURBVFhH7ZbpT1NBFMXdKNQKtCwKKgYNRgVZCm0phRYR
|
||||
cQkitVoIyGYkpAqYEIIxKIggxAqiaNS4xS1YZNUqi2AgLmGVHREEBBQR/4rjTIMJRBSpgH7oS05e+/qm
|
||||
9zfn3rkzCxboLp0DOgd+44Cnp+cSFxcXYz6fb0Hv9Pu8GkaDHsk0OZmUZ9AVlW6WweVyNwmFQpN5A3F0
|
||||
dLQ+nsvsaRiMxt1aLk7kMocVZ00vkud2xBVTAqg3p444OTnZnlbroW1Egd5vqWj9fAK5DWIkqhhjCqXp
|
||||
LVcPexcHB4fltra2DAKycNZhnJ2d7ZNL9NA4HEgUTEBi8H4sBe0jychv2oFTj/VxOMtEJd5uJ6J1YmNj
|
||||
oz+rIBQgsVAP9UOBqB3cr1H9YBBaPinw7msSOkZTUfTWD8klLERlcYq9Zeu3kfSsInXCnBUQCnAsj4Ha
|
||||
j3K8GZBNUu2AHE3DkegcTUTXaBoetwQguYiDqHPsCv9D1oE8Hs+KpIdFQBZpnRoKEPeAQQLvw+t+6dQi
|
||||
vzUMRZC0JBCQVDxrC0dSgRkOKg1rpAqrcApCVo2BVo5QgNg7+iSwDC/7/KeRlDgVSgo1Hp1fUlHeHolT
|
||||
BWtwMINduTNgLX+8PmZmBgVQ3NTHyw9S1PTu+WO97gvAm/4DeNUXiBs1XISksW+LRCLDmUUnb1OAQ1cN
|
||||
8KTNC0Ut4mlV3CrBs04fVPdKUdW9F0r1RkReY2KL1MZTawfCcpgoapPgUbPol8pvdkdJuxcqe/zwomcv
|
||||
MtWbEXGZBVmCuYovcnQan/3M+wR1IOg8E/nNHnjYKPxJqkY3FLZIUNa1SzPj7FIuwnIM4Z9gVixwtxdO
|
||||
aFIzdl8zgALIlUvxsEmE+/X8SVKRZ+qO7ajs9kdOGQ8hF4zhG2/yVOy7YQcZZzneHbUL/GMUBZCeWYoH
|
||||
ja64U+esEf1c3L4VFd27calCgOAsDnbFmVaIZWv30Sak9ZKbCpUC7E5h4V4dH3freCQVEpS/88WV524I
|
||||
OW8On1hOjVhurVnrs9b9JoLQzWhnEosUnwSlJM/Xqz1I4BXwjmHXi4NXR9Pd8q+73e+SRAN4x7F7rla5
|
||||
IizbEl5HjTo8DqxKJDNeR3K8TC6XL/67JE8zmh5IxBEWJyWxRl3uoSvTiSPrBQKB0bwdSP75kWxO7dX9
|
||||
uc6B/8WB7+oZG+bTszTSAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="bt_kill.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOISURBVFhH7Zb7S1NxGMatrJ1mpfPW0jSLkIooSud0ZjNT
|
||||
3HK5rXZzaqXSgki6W79JdA+ie0FFBQVBCZUlERWRlkVRkanzbOYlmJN+aX9A8PR+V0IEeb7q+dHBB3bY
|
||||
e97neZ/3e7ZFRIy/xhMYT4AzgY6VynPteVE/O/RRkKI9T3mRsy1f2RcS767R4sfDq/jRdH14Hl3D1806
|
||||
yGaibYXytK98KQbP7cbAiS34tt+Cb/vM/2Xg+BYMXqhDd5UGbWNN4hOJd5UtRvDMTgSOe9C/rxT9dWsl
|
||||
CRzbjOCFvfBVZeHzaE18zFOe9DoWkviO3+J1JL7XxE3gaA2C5/eQCQ0+kYk79ohJfAunKibeYUtH8NR2
|
||||
sGn695Dw7pIREzhcjeDZXRCrtfjAa+J97tQDbeY0BE9uwwCbPCxsHDWBQ5swSCv0upfgXS7H0/FWJ3z3
|
||||
b1yGwJFq9O0yom9n8ZgJHNyA7koysEIJyTW05gqhblc6+naQ8PYi2fjqXoC3uRwGXumEkN8xH321hbLC
|
||||
hmrVcRhoIQM+2zz0biuQFTbUK91U6RU055CBdWno3ZovK37bXDTncBh4kS2EROsciOYUWfGvT8OLbA4D
|
||||
z7VkgImbkmXFb0nFcy2HgadkoKs0CV0lalnxmZNBvaXPwOMsIeQ1qeE1JsrHmkSINNSTLB4DminfRUsS
|
||||
/OYkeIvjZcFXOgs+6tekEUKSX0RNGsWBl/po9LjS4CtVo7ModkyIppnocc7Bm8JYNGUqjkoaYAWNGcLp
|
||||
sAlHKnwliehcHTMqxDUJ6KUerUVxaMwULt5ZFDGFywAresBMrIr5bYIadRZEjwjRGI9eewpeF8bhPhMf
|
||||
wc/xhPr6+okej2dyQ6Zw6WU+JWGfDdFIq1g1nQvREEviySSuAvW44jFlKO12O/s/MEEyASZeW1ursNls
|
||||
scTcm5ro2+EkbPRoGlToyJ82LF3FqnBtC63tVnbM3UqnZSGJqysqKqL0en2kpAnmlBU7nc4Uh8Ohcblc
|
||||
JVd0M582F6gQqJnPRQtNflmnfkb3WqnHSuqVzgai3uwMDJ/CvwlQg6VE9g2t6l7DcgV4YLVlZWU5brc7
|
||||
g4mPKAHmcOgMmEwmZXl5+QxqpGITUNN41sxqtc5mCdH71CHYNU2cRHUJFosljt1Dn0UT0wwGg4L7DPx1
|
||||
SFhUYTNDsCZsj+yAMlikQ7BrqotkNX/f8yfy/8b+Cyvx1MsdZ4/QAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGGSURBVFhH7ZbPKwRxGMb3ZNbuQblNbbTRZidqm1k/1yJt
|
||||
22a1mNLi6qZoIyv/hvInOEqIthRKKSlJ+4OLmcXNyV/w+j7l6jDPHqRm6mlOz+f99F6+byDgf/4G/A38
|
||||
sgHDMNpM09Qty+pT/wEmP10dLM+LxvCzVGelNhmWVgIGWJ4FYF9Vwz8P9uTr6oQKumCA5VkAK3+aCMv7
|
||||
7oo0t4tU0AUDLErgMR2Wt51lcbeKVNAFgxZ4SIekWcbwRSrogkEL3I8rAQwv2VTQBYMWuEuFxN20xdmY
|
||||
p4IuGLTA7ZgSKC2Is16ggi4YtMDNaLu4avjrWp4KumDQAteq/GL3S6MQp4IuGLTA5YgSmFPD8zEq6IJB
|
||||
C1wMB+V5Nib1XA8VdMGgBSpDSmCmV+rZKBV0waAFzgeD0shFpZbpooIuGLTAaVIJZLulNh2hgi4YtMBx
|
||||
UpN6JiLVKZ0KumBQAnhCjyxNnKW4fKwmqKALBvsc6/uJjsqhqUkrAYM6SP78JPN8QPgFfwP/dQPf75A9
|
||||
ouq07JEAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>306, 17</value>
|
||||
</metadata>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD///8AAAAAAQAAAAIAAAAEAAAABwAAAAoAAAALAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAA
|
||||
AAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAACwAAAAoAAAAHAAAABAAA
|
||||
AAIAAAAB////AP///wAAAAACAAAABwAAAA0AAAAWAAAAHQAAACIAAAAkAAAAJAAAACQAAAAkAAAAJAAA
|
||||
ACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAiAAAAHQAA
|
||||
ABYAAAANAAAABwAAAAL///8A////AAAAAAQAAAANAAAAGwAAAC0AAAA6AAAAQwAAAEgAAABIAAAASAAA
|
||||
AEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAA
|
||||
AEMAAAA6AAAALQAAABsAAAANAAAABP///wD///8AAAAABwAAABZ9VjSpjWE7/41hO/+NYTv/jWE7/41h
|
||||
O/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41h
|
||||
O/+NYTv/jWE7/41hO/+NYTv/fVY0qQAAABYAAAAH////AP///wAAAAAKAAAAHY1hO/+0Yz3/tGM9/7Rj
|
||||
Pf/p0cX/3rqq/966qv/euqr/3rqq/966qv/euqr/3rqq/966qv/euqr/3rqq/966qv/euqr/6dHF/7Rj
|
||||
Pf/p0cX/3rqq/+nRxf+0Yz3/tGM9/7RjPf+NYTv/AAAAHQAAAAr///8A////AAAAAAsAAAAijWE7/7Vk
|
||||
Pv+1ZD7/tWQ+/+nRxf/eu6r/3ruq/967qv/eu6r/3ruq/967qv/eu6r/3ruq/967qv/eu6r/3ruq/967
|
||||
qv/p0cX/tWQ+/+nRxf/eu6r/6dHF/7VkPv+1ZD7/tWQ+/41hO/8AAAAiAAAAC////wD///8AAAAADAAA
|
||||
ACSNYTv/t2U//7dlP/+3ZT//6tHG/+rRxv/q0cb/6tHG/+rRxv/q0cb/6tHG/+rRxv/q0cb/6tHG/+rR
|
||||
xv/q0cb/6tHG/+rRxv+3ZT//6tHG/+rRxv/q0cb/t2U//7dlP/+3ZT//jWE7/wAAACQAAAAM////AP//
|
||||
/wAAAAAMAAAAJI1hO/+3Z0D/t2dA/7dnQP+3Z0D/t2dA/7dnQP+4aEH/uGlB/7hpQf+5aUL/uWpC/7lq
|
||||
Qv+5akL/uWpC/7lqQv+5aUL/uGlB/7hpQf+4aEH/t2dA/7dnQP+3Z0D/t2dA/7dnQP+NYTv/AAAAJAAA
|
||||
AAz///8A////AAAAAAwAAAAkjWE7/7lpQf+5aUH/uWlB/7lpQf+6akL/umtC/7trQ/+7bEP/vG1E/7xu
|
||||
RP+9bkT/vW5E/71vRf+9bkT/vW5E/7xuRP+8bUT/u2xD/7trQ/+6a0L/umpC/7lpQf+5aUH/uWlB/41h
|
||||
O/8AAAAkAAAADP///wD///8AAAAADAAAACSNYTv/umtD/7prQ/+6a0P/u2xE/7ttRP+8bkX/vW9G/75w
|
||||
Rv++cUf/v3JH/79zSP+/c0j/v3NI/79zSP+/c0j/v3JH/75xR/++cEb/vW9G/7xuRf+7bUT/u2xE/7pr
|
||||
Q/+6a0P/jWE7/wAAACQAAAAM////AP///wAAAAAMAAAAJI1hO/+7bUT/u21E/7xuRf+9cEb/vXFG/75y
|
||||
R/+/dEj/wHVJ/8F2Sv/Bd0r/wnhL/8J4S//CeUv/wnhL/8J4S//Bd0r/wXZK/8B1Sf+/dEj/vnJH/71x
|
||||
Rv+9cEb/vG5F/7ttRP+NYTv/AAAAJAAAAAz///8A////AAAAAAwAAAAkjWE7/71vRf++cEb/v3JH/79z
|
||||
R//AdUn/wXZK/8J4S//DeUv/xHtN/8V8Tf/FfU7/xn1O/8Z+Tv/GfU7/xX1O/8V8Tf/Ee03/w3lL/8J4
|
||||
S//Bdkr/wHVJ/79zR/+/ckf/vnBG/41hO/8AAAAkAAAADP///wD///8AAAAADAAAACSNYTv/v3JI/79z
|
||||
SP/AdUr/wXdL/8N5TP/Ee03/xX1P/8Z+T//HgFD/x4FR/8iCUv/Ig1L/yINS/8iDUv/IglL/x4FR/8eA
|
||||
UP/Gfk//xX1P/8R7Tf/DeUz/wXdL/8B1Sv+/c0j/jWE7/wAAACQAAAAM////AP///wAAAAAMAAAAJI1h
|
||||
O//XpYn/16aJ/9iniv/ZqYv/2aqM/9usjf/brY7/3K6O/9ywj//dsZD/3bKQ/96ykf/espH/3rKR/92y
|
||||
kP/dsZD/3LCP/9yujv/brY7/26yN/9mqjP/ZqYv/2KeK/9emif+NYTv/AAAAJAAAAAz///8A////AAAA
|
||||
AAwAAAAkjWE7/9eniv/YqIv/2aqM/9qsjf/brY7/3K+P/9ywkP/dspH/3rOS/960k//ftZP/37WU/9+1
|
||||
lP/ftZT/37WT/960k//es5L/3bKR/9ywkP/cr4//262O/9qsjf/Zqoz/2KiL/41hO/8AAAAkAAAADP//
|
||||
/wD///8AAAAADAAAACSNYTv/2amL/9mqjP/arI3/266O/9ywkP/dspH/3rOS/961k//gt5T/4LiV/+C5
|
||||
lv/huZb/4bmW/+G5lv/guZb/4LiV/+C3lP/etZP/3rOS/92ykf/csJD/266O/9qsjf/Zqoz/jWE7/wAA
|
||||
ACQAAAAM////AP///wAAAAAMAAAAJI1hO//aq4z/26yN/9yujv/csJD/3rKR/960kv/gtpT/4LiV/+G6
|
||||
lv/iu5b/4ryX/+O9l//jvZj/472X/+K8l//iu5b/4bqW/+C4lf/gtpT/3rSS/96ykf/csJD/3K6O/9us
|
||||
jf+NYTv/AAAAJAAAAAz///8A////AAAAAAsAAAAijWE7/9usjv/cro//3LCQ/96ykv/etJP/4LaU/+C4
|
||||
lv/iupf/4ryY/+O+mf/kv5r/5MCb/+TAm//kwJv/5L+a/+O+mf/ivJj/4rqX/+C4lv/gtpT/3rST/96y
|
||||
kv/csJD/3K6P/41hO/8AAAAiAAAAC////wD///8AAAAACgAAAB2NYTv/////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////jWE7/wAAAB0AAAAK////AP///wAAAAAHAAAAFo1hO///////3qqB////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////3qqB//////+NYTv/AAAAFgAAAAf///8A////AAAAAAQAAAANjWE7////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/////////////////////////////////////////////41hO/8AAAANAAAABP///wD///8AAAAAAgAA
|
||||
AAeJXjmbjWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41h
|
||||
O/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/iV45mwAAAAcAAAAC////AP//
|
||||
/wAAAAABAAAAAgAAAAQAAAAHAAAACgAAAAsAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAA
|
||||
AAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAALAAAACgAAAAcAAAAEAAAAAgAA
|
||||
AAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8AgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAA
|
||||
AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAH/////////////
|
||||
//////////////////////////////////8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
306
VMSMonitor/Form1.vb
Normal file
306
VMSMonitor/Form1.vb
Normal file
@@ -0,0 +1,306 @@
|
||||
Public Class Form1
|
||||
|
||||
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
|
||||
Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
|
||||
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Integer)
|
||||
Private Const WM_QUIT = &H12
|
||||
Private Const WM_CLOSE = &H10
|
||||
|
||||
Private ison As Boolean = False
|
||||
Private ismonitor As Boolean = False
|
||||
|
||||
Dim totaltime As TimeSpan
|
||||
Dim ercnt As Integer = 0
|
||||
Dim starttime As Integer = 0
|
||||
|
||||
Dim Xml As ArinXML
|
||||
|
||||
Dim Createfile As String = ""
|
||||
Dim CreateStart As String = ""
|
||||
Dim killon As Boolean = False
|
||||
|
||||
Dim fclose As Boolean = False
|
||||
Dim autoexit As Short = 0
|
||||
Dim runtime As String = Now.ToString
|
||||
|
||||
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
|
||||
If fclose = False Then e.Cancel = True
|
||||
Me.WindowState = FormWindowState.Minimized
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
||||
Me.ProgressBar1.Minimum = 0
|
||||
Me.ProgressBar1.Maximum = 6
|
||||
|
||||
totaltime = Nothing
|
||||
ercnt = 0
|
||||
Me.bt_monitor.PerformClick()
|
||||
End Sub
|
||||
|
||||
Public Function RunProcess(ByVal 파일이름 As String, Optional ByVal 실행옵션 As String = vbNullString) As Boolean
|
||||
Dim RunP As Process
|
||||
Dim B As System.Diagnostics.ProcessStartInfo = New System.Diagnostics.ProcessStartInfo
|
||||
|
||||
If FileIO.FileSystem.FileExists(파일이름) Then
|
||||
B.FileName = 파일이름
|
||||
B.WorkingDirectory = 파일이름.Substring(0, 파일이름.LastIndexOf("\"))
|
||||
B.Arguments = 실행옵션
|
||||
RunP = Process.Start(B)
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Function checkmyproc() As Process
|
||||
Try
|
||||
Dim Prc() As Process = Process.GetProcesses '//현재프로세스배열을 가져온다.
|
||||
Dim MyPrc As Process
|
||||
For Each MyPrc In Prc
|
||||
If MyPrc.ProcessName.ToUpper.IndexOf("VPS.NET") <> -1 Then
|
||||
Return MyPrc
|
||||
End If
|
||||
Next
|
||||
Return Nothing
|
||||
Catch ex As Exception
|
||||
Return Nothing
|
||||
End Try
|
||||
|
||||
End Function
|
||||
|
||||
Public Sub KillMyProc(ByVal 클래스명 As String)
|
||||
Dim Np As IntPtr
|
||||
Np = FindWindow(클래스명, vbNullString)
|
||||
'Me.lstOutput.Items.Add("WHND:" & Np.ToInt32.ToString)
|
||||
If Np = 0 Then
|
||||
'Form_Standard.MDIMessage.Text = "Cannot Find :" & 클래스명
|
||||
Exit Sub
|
||||
End If
|
||||
PostMessage(Np.ToInt32, WM_QUIT, 0&, 0&)
|
||||
Sleep(500)
|
||||
End Sub
|
||||
|
||||
Private Sub Msg(ByVal m As String)
|
||||
Me.lb_msg.Text = m
|
||||
My.Application.DoEvents()
|
||||
End Sub
|
||||
Public Sub oKillMyProc(ByVal 프로세스명 As String)
|
||||
Dim Prc() As Process = Process.GetProcesses '//현재프로세스배열을 가져온다.
|
||||
Dim MyPrc As Process
|
||||
Dim 파일명 As String = 프로세스명.Substring(프로세스명.LastIndexOf("\") + 1).ToUpper
|
||||
For Each MyPrc In Prc
|
||||
If (MyPrc.ProcessName & ".EXE").ToUpper = 파일명 Then
|
||||
|
||||
' MsgBox(MyPrc.StartInfo.Fileame)
|
||||
MyPrc.Kill()
|
||||
End If
|
||||
Next
|
||||
Sleep(500)
|
||||
End Sub
|
||||
|
||||
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
|
||||
Dim Prc As Process = checkmyproc()
|
||||
If Prc Is Nothing Then
|
||||
|
||||
'//프로세스가 없다.
|
||||
If Me.Timer2.Enabled = False Then
|
||||
autoexit += 1
|
||||
If autoexit > 3 Then
|
||||
Me.Close()
|
||||
End If
|
||||
End If
|
||||
|
||||
ison = False
|
||||
Me.bt_kill.Enabled = False
|
||||
Me.bt_run.Enabled = True
|
||||
'Me.Text = "noprocee"
|
||||
Me.status_run.ForeColor = Color.Gray
|
||||
If Me.starttime > 0 Then
|
||||
Me.status_run.ForeColor = Color.Orange
|
||||
End If
|
||||
|
||||
Xml = New ArinXML(My.Application.Info.DirectoryPath & "\conf.xml")
|
||||
Dim File As String = Xml.Data("config", "autocreate")
|
||||
Dim Filename As String = Xml.Data("config", "createfile")
|
||||
Runtime = Xml.Data("config", "runtime")
|
||||
|
||||
If File.Trim = "1" AndAlso Filename.Trim <> "" AndAlso Me.Timer2.Enabled = False Then
|
||||
Me.ProgressBar1.ForeColor = Color.Green
|
||||
Me.Timer2.Enabled = True
|
||||
Me.Timer2.Start()
|
||||
End If
|
||||
|
||||
Else
|
||||
autoexit = 0
|
||||
Me.status_run.ForeColor = Color.Blue
|
||||
Me.bt_kill.Enabled = True
|
||||
Me.bt_run.Enabled = False
|
||||
|
||||
ison = True
|
||||
Try
|
||||
dispalyinfo(Prc)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub dispalyinfo(ByVal prc As Process)
|
||||
Xml = New ArinXML(My.Application.Info.DirectoryPath & "\conf.xml")
|
||||
Createfile = Xml.Data("config", "createfile")
|
||||
CreateStart = Xml.Data("config", "createstart")
|
||||
|
||||
|
||||
Dim Buf As New System.Text.StringBuilder
|
||||
Buf.AppendLine("NOW TIME:" & Now.ToString)
|
||||
|
||||
If CreateStart.Trim <> "" AndAlso Createfile <> "" Then
|
||||
Buf.AppendLine(">> 생산중:" & Createfile)
|
||||
Buf.AppendLine(">> 판정시작:" & CreateStart)
|
||||
killon = True
|
||||
Me.status_create.ForeColor = Color.Blue
|
||||
Else
|
||||
Me.status_create.ForeColor = Color.Gray
|
||||
killon = False
|
||||
End If
|
||||
|
||||
Buf.AppendLine("PROCESS NAME:" & prc.ProcessName)
|
||||
Buf.AppendLine("Start Time:" & prc.StartTime.ToString())
|
||||
Buf.AppendLine("Total time:" & prc.TotalProcessorTime.ToString())
|
||||
Buf.AppendLine("SessionID:" & prc.SessionId.ToString)
|
||||
Buf.AppendLine("Response:" & prc.Responding)
|
||||
Buf.AppendLine("Handle:" & prc.Handle.ToString)
|
||||
Buf.AppendLine("Handle Count:" & prc.HandleCount)
|
||||
Buf.AppendLine("prc.HasExited:" & prc.HasExited)
|
||||
Buf.AppendLine("prc.Id:" & prc.Id)
|
||||
Buf.AppendLine("prc.MainWindowTitle:" & prc.MainWindowTitle)
|
||||
Buf.AppendLine("prc.PrivilegedProcessorTime.ToString:" & prc.PrivilegedProcessorTime.ToString)
|
||||
Buf.AppendLine("prc.UserProcessorTime.ToString:" & prc.UserProcessorTime.ToString)
|
||||
Buf.AppendLine("Error Count:" & Me.ercnt)
|
||||
|
||||
If Me.totaltime = Nothing Then
|
||||
Me.totaltime = prc.TotalProcessorTime
|
||||
Else
|
||||
Dim ts As TimeSpan = prc.TotalProcessorTime - Me.totaltime
|
||||
|
||||
Buf.AppendLine("Run Status:" & ts.ToString())
|
||||
|
||||
|
||||
If (Now - CDate(Me.runtime)).Seconds = 15 And killon Then
|
||||
Me.ProgressBar1.ForeColor = Color.Red
|
||||
ercnt += 1
|
||||
Me.ProgressBar1.Value = ercnt
|
||||
Else
|
||||
Me.ProgressBar1.Value = 0
|
||||
ercnt = 0
|
||||
End If
|
||||
|
||||
Me.totaltime = prc.TotalProcessorTime
|
||||
|
||||
If ercnt > 5 And killon Then '//10초를 넘도록
|
||||
bt_kill.PerformClick()
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
Buf.AppendLine(prc.ToString())
|
||||
|
||||
Dim runtime As String = Xml.Data("config", "runtime")
|
||||
Msg("Running Time:" & runtime)
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
|
||||
|
||||
starttime += 1
|
||||
Me.ProgressBar1.Value = starttime
|
||||
|
||||
If starttime > 5 Then
|
||||
|
||||
Me.ProgressBar1.Value = 0
|
||||
Me.ProgressBar1.ForeColor = Color.Red
|
||||
Me.bt_run.PerformClick()
|
||||
starttime = 0
|
||||
Me.Timer2.Stop()
|
||||
Me.Timer2.Enabled = False
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub bt_monitor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_monitor.Click
|
||||
Me.ProgressBar1.Value = 0
|
||||
|
||||
If Me.ismonitor Then
|
||||
Me.Timer1.Stop()
|
||||
Me.Timer1.Enabled = False
|
||||
Me.ismonitor = False
|
||||
Me.bt_monitor.Text = "모니터 시작"
|
||||
Msg("MONITOR OFF")
|
||||
Me.status_monitor.ForeColor = Color.Gray
|
||||
Else
|
||||
Me.Timer1.Enabled = True
|
||||
Me.Timer1.Start()
|
||||
Me.ismonitor = True
|
||||
Me.bt_monitor.Text = "모니터 종료"
|
||||
Me.status_monitor.ForeColor = Color.Blue
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_run.Click
|
||||
If Me.ison Then
|
||||
MsgBox("중복실행이므로 실행을 할 수 없습니다", MsgBoxStyle.Information, "확인")
|
||||
Else
|
||||
|
||||
RunProcess(My.Application.Info.DirectoryPath & "\vps.net.exe", "TINDEVIL")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_kill.Click
|
||||
Dim Prc As Process = checkmyproc()
|
||||
If Not Prc Is Nothing Then
|
||||
|
||||
Dim sta As Boolean = Prc.CloseMainWindow()
|
||||
If sta Then
|
||||
My.Application.DoEvents()
|
||||
|
||||
While (1)
|
||||
Dim P As Process = checkmyproc()
|
||||
If P Is Nothing Then Exit While
|
||||
My.Application.DoEvents()
|
||||
End While
|
||||
|
||||
Xml = New ArinXML(My.Application.Info.DirectoryPath & "\conf.xml")
|
||||
Xml.Data("config", "autocreate") = "1"
|
||||
Xml.Data("config", "shutdown") = "0"
|
||||
|
||||
Me.ProgressBar1.ForeColor = Color.Green
|
||||
starttime = 0
|
||||
Me.Timer2.Enabled = True
|
||||
Me.Timer2.Start()
|
||||
Else
|
||||
Xml = New ArinXML(My.Application.Info.DirectoryPath & "\conf.xml")
|
||||
Xml.Data("config", "autocreate") = "1"
|
||||
Xml.Data("config", "shutdown") = "0"
|
||||
|
||||
Prc.Kill()
|
||||
Me.ProgressBar1.ForeColor = Color.Green
|
||||
starttime = 0
|
||||
Me.Timer2.Enabled = True
|
||||
Me.Timer2.Start()
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStrip1_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
|
||||
Me.fclose = True
|
||||
End
|
||||
End Sub
|
||||
End Class
|
||||
179
VMSMonitor/Frm_monitor.Designer.vb
generated
Normal file
179
VMSMonitor/Frm_monitor.Designer.vb
generated
Normal file
@@ -0,0 +1,179 @@
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class Frm_monitor
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form은 Dispose를 재정의하여 구성 요소 목록을 정리합니다.
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
Try
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
Finally
|
||||
MyBase.Dispose(disposing)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Windows Form 디자이너에 필요합니다.
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'참고: 다음 프로시저는 Windows Form 디자이너에 필요합니다.
|
||||
'수정하려면 Windows Form 디자이너를 사용하십시오.
|
||||
'코드 편집기를 사용하여 수정하지 마십시오.
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Me.components = New System.ComponentModel.Container()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Frm_monitor))
|
||||
Me.Timer1 = New System.Windows.Forms.Timer(Me.components)
|
||||
Me.Timer2 = New System.Windows.Forms.Timer(Me.components)
|
||||
Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
|
||||
Me.bt_monitor = New System.Windows.Forms.ToolStripButton()
|
||||
Me.bt_run = New System.Windows.Forms.ToolStripButton()
|
||||
Me.bt_kill = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ProgressBar1 = New System.Windows.Forms.ProgressBar()
|
||||
Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
|
||||
Me.status_monitor = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.status_run = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.lb_msg = New System.Windows.Forms.ToolStripStatusLabel()
|
||||
Me.RichTextBox1 = New System.Windows.Forms.RichTextBox()
|
||||
Me.ToolStrip1.SuspendLayout()
|
||||
Me.StatusStrip1.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'Timer1
|
||||
'
|
||||
Me.Timer1.Interval = 1000
|
||||
'
|
||||
'Timer2
|
||||
'
|
||||
Me.Timer2.Interval = 1000
|
||||
'
|
||||
'ToolStrip1
|
||||
'
|
||||
Me.ToolStrip1.ImageScalingSize = New System.Drawing.Size(32, 32)
|
||||
Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.bt_monitor, Me.bt_run, Me.bt_kill, Me.ToolStripButton1})
|
||||
Me.ToolStrip1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.ToolStrip1.Name = "ToolStrip1"
|
||||
Me.ToolStrip1.Size = New System.Drawing.Size(648, 39)
|
||||
Me.ToolStrip1.TabIndex = 4
|
||||
Me.ToolStrip1.Text = "ToolStrip1"
|
||||
'
|
||||
'bt_monitor
|
||||
'
|
||||
Me.bt_monitor.Image = CType(resources.GetObject("bt_monitor.Image"), System.Drawing.Image)
|
||||
Me.bt_monitor.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.bt_monitor.Name = "bt_monitor"
|
||||
Me.bt_monitor.Size = New System.Drawing.Size(103, 36)
|
||||
Me.bt_monitor.Text = "모니터시작"
|
||||
'
|
||||
'bt_run
|
||||
'
|
||||
Me.bt_run.Enabled = False
|
||||
Me.bt_run.Image = CType(resources.GetObject("bt_run.Image"), System.Drawing.Image)
|
||||
Me.bt_run.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.bt_run.Name = "bt_run"
|
||||
Me.bt_run.Size = New System.Drawing.Size(97, 36)
|
||||
Me.bt_run.Text = "VMS 실행"
|
||||
'
|
||||
'bt_kill
|
||||
'
|
||||
Me.bt_kill.Enabled = False
|
||||
Me.bt_kill.Image = CType(resources.GetObject("bt_kill.Image"), System.Drawing.Image)
|
||||
Me.bt_kill.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.bt_kill.Name = "bt_kill"
|
||||
Me.bt_kill.Size = New System.Drawing.Size(91, 36)
|
||||
Me.bt_kill.Text = "강제종료"
|
||||
'
|
||||
'ToolStripButton1
|
||||
'
|
||||
Me.ToolStripButton1.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right
|
||||
Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton1.Name = "ToolStripButton1"
|
||||
Me.ToolStripButton1.Size = New System.Drawing.Size(115, 36)
|
||||
Me.ToolStripButton1.Text = "프로그램종료"
|
||||
'
|
||||
'ProgressBar1
|
||||
'
|
||||
Me.ProgressBar1.Dock = System.Windows.Forms.DockStyle.Bottom
|
||||
Me.ProgressBar1.Location = New System.Drawing.Point(0, 362)
|
||||
Me.ProgressBar1.Name = "ProgressBar1"
|
||||
Me.ProgressBar1.Size = New System.Drawing.Size(648, 23)
|
||||
Me.ProgressBar1.TabIndex = 5
|
||||
'
|
||||
'StatusStrip1
|
||||
'
|
||||
Me.StatusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.status_monitor, Me.status_run, Me.lb_msg})
|
||||
Me.StatusStrip1.Location = New System.Drawing.Point(0, 340)
|
||||
Me.StatusStrip1.Name = "StatusStrip1"
|
||||
Me.StatusStrip1.Size = New System.Drawing.Size(648, 22)
|
||||
Me.StatusStrip1.TabIndex = 6
|
||||
Me.StatusStrip1.Text = "StatusStrip1"
|
||||
'
|
||||
'status_monitor
|
||||
'
|
||||
Me.status_monitor.Name = "status_monitor"
|
||||
Me.status_monitor.Size = New System.Drawing.Size(66, 17)
|
||||
Me.status_monitor.Text = "● Monitor"
|
||||
'
|
||||
'status_run
|
||||
'
|
||||
Me.status_run.Name = "status_run"
|
||||
Me.status_run.Size = New System.Drawing.Size(49, 17)
|
||||
Me.status_run.Text = "● VMS"
|
||||
'
|
||||
'lb_msg
|
||||
'
|
||||
Me.lb_msg.Name = "lb_msg"
|
||||
Me.lb_msg.Size = New System.Drawing.Size(53, 17)
|
||||
Me.lb_msg.Text = "Message"
|
||||
'
|
||||
'RichTextBox1
|
||||
'
|
||||
Me.RichTextBox1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.RichTextBox1.Font = New System.Drawing.Font("나눔고딕", 11.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(129, Byte))
|
||||
Me.RichTextBox1.Location = New System.Drawing.Point(0, 39)
|
||||
Me.RichTextBox1.Name = "RichTextBox1"
|
||||
Me.RichTextBox1.Size = New System.Drawing.Size(648, 301)
|
||||
Me.RichTextBox1.TabIndex = 7
|
||||
Me.RichTextBox1.Text = "VMS 실행감지"
|
||||
'
|
||||
'Frm_monitor
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 12.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.ClientSize = New System.Drawing.Size(648, 385)
|
||||
Me.Controls.Add(Me.RichTextBox1)
|
||||
Me.Controls.Add(Me.StatusStrip1)
|
||||
Me.Controls.Add(Me.ProgressBar1)
|
||||
Me.Controls.Add(Me.ToolStrip1)
|
||||
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
|
||||
Me.MaximizeBox = False
|
||||
Me.Name = "Frm_monitor"
|
||||
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
|
||||
Me.Text = "VMS STARTER"
|
||||
Me.WindowState = System.Windows.Forms.FormWindowState.Minimized
|
||||
Me.ToolStrip1.ResumeLayout(False)
|
||||
Me.ToolStrip1.PerformLayout()
|
||||
Me.StatusStrip1.ResumeLayout(False)
|
||||
Me.StatusStrip1.PerformLayout()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout()
|
||||
|
||||
End Sub
|
||||
Friend WithEvents Timer1 As System.Windows.Forms.Timer
|
||||
Friend WithEvents Timer2 As System.Windows.Forms.Timer
|
||||
Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip
|
||||
Friend WithEvents bt_monitor As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents bt_run As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents bt_kill As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents ProgressBar1 As System.Windows.Forms.ProgressBar
|
||||
Friend WithEvents StatusStrip1 As System.Windows.Forms.StatusStrip
|
||||
Friend WithEvents lb_msg As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents status_run As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents status_monitor As System.Windows.Forms.ToolStripStatusLabel
|
||||
Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton
|
||||
Friend WithEvents RichTextBox1 As System.Windows.Forms.RichTextBox
|
||||
|
||||
End Class
|
||||
284
VMSMonitor/Frm_monitor.resx
Normal file
284
VMSMonitor/Frm_monitor.resx
Normal file
@@ -0,0 +1,284 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="Timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="Timer2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>107, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ToolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>197, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="bt_monitor.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAMpSURBVFhH7ZfLS1RRHMe1rCCkqAwiqkV/hhtbutBQUHyC
|
||||
gWCaZas22jg+Z8zMHNTRZBAbRB1d2aaFq9z6FoUW4trw/QZRfp3PoTOMwhmtmYEWCl/OY7738/3Onbl3
|
||||
rnFxl3+XZ+B/OgMjIyNeJYmxvNb3PDw8LMfHx3JychITwSbDWiAQCMjR0ZEcHBzI4eFhVAUTNhnWAoOD
|
||||
g7K/vy87OzuSnJwsz9PToyJYMGGTYS0wMDAQLJCWliavysqkrLQ0IsGAZQqQYS3Q39+vC2xvb0t2dra8
|
||||
r6qSaocjIsGABRM2GdYCfr9f9vb2tDknJydqBWDBhE2GtUBfX582bW1tSX5+ftQKwIIJmwxrgd7eXm3a
|
||||
3NyUwsLCiE596EcHCyZsMqwFfD6f7O7uysbGhrwoKpLamppgiZWVlX8qBAMWTNhkWAv09PQECxQXF0uT
|
||||
261LGFEidH2ROQxYpgAZ1gLdXV26wPr6upSUlIinrU1cjY2nRImze+HWMGDBhE2GtYC3s1Nfr2tra/ra
|
||||
/9LdLR+bm4MiPHR9kTkMWDBhk2Et0N7erk2rq6vyurxcvqpvLO8AEW7mZs3e2f1QD3MYsGDCJsNawOPx
|
||||
aNPi4qK8raiQwNCQbhyJYMCCCZsMa4HPra3atLCwIFWVlTI6OirfIhQMWDBhk2Et8KmlRd+x5ufnpaG+
|
||||
/q8/b9t3AhZM2GRYCwDANDc3pw+IpmDCJsNa4ENTkzbNzMzI7OxsVAUTNhnWAm6XS9+zp6endQnU0dFx
|
||||
SmY/3Oj2v5Fn7xKF0fhgwibDWqCxoUGbJicnZWpqSovnQ3O5MTf74cYK31P5+eulMBofTNhkWAvU19Vp
|
||||
08TEhC6BxsbGTsnshxsDP0rF9T1BGI0PJmwyrAXqamv1DWN8fDwmgk2GtUCN0ynLy8uytLQUE8Emw1rA
|
||||
6XB4ndXVElOpjPP+F4p3Op1X1C/YNfUwebOgoOCWeqK5k5WVdTcvLy9JPd89yMzMfKQesx6r+RMj1rm5
|
||||
uQ+V735GRsY9jlGv3VZKTE1NvaHGqyo4/rzw0Ncx6zJGQFJSUhIoh9T6uhFr5UvAE3rMn1Br8G+IV7/l
|
||||
/QuMLAAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="bt_run.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAANxSURBVFhH7ZbpT1NBFMXdSqkVLJuCiAGDUUGWQltqoUVE
|
||||
WYJKrRYiIkIgpCqYEIIxbCKoEUEUjRi3gBqssirKIhoal5RNdkQQEVBE/CuOMw0mEBWkAvqhLzl57eub
|
||||
3t+ce+fOLFigu3QO6ByYwgFPT88lrq6uy/l8vjm90+/zahgNejjLODnlvn539GnTM1wud6NQKDSeNxAn
|
||||
Jyfr44Ws3sbBIyhQc5FUyBpWnDW5SJ7bE1dMCCBjTh1xdna2O1nBQPuIAn3f0tH2OQmFjWIkKhljikyT
|
||||
m24eDq6Ojo4r7Ozs9AjIwlmHcXFxcUgtZ6BpOJgohIDE4N1YGjpGUlHU7IsTD5k4lG2sFPvYi2id2Nra
|
||||
MmcVhAIkljDQMBQM9eBejRoG96H1kwJvv6agczQdpW92IrWcjehsozJv2bptJD2WpE5YswJCAY7d14P6
|
||||
oxyvB2STpB6Qo3k4Cl2jiegezcDD1iCklhoh+hynJjDSOpjH41mR9LAJyCKtU0MB4u7qkcB78OqD9Nci
|
||||
vzUOhZO0JBCQdDxpP4iUYlNEZBqopAqrgxSErBp9rRyhALH5TBJYhhf9gdNISpw6QAo1Hl1f0lHdEYUT
|
||||
xWsQcYZT6xdkwx+vj5mZQQEUN5h48V4KVd+uP9ar/iC8/rAfL/uDcV3FRWgG55ZIJDKYWXTyNgWIzNPH
|
||||
o3YvlLaKp1VZmwRPurajrk+KZz27kVmxAVFXWdgitfXU2oGwXBZK2yV40CL6rYpa3FHe4YXa3p143rsb
|
||||
WRWbEH6ZDVmCmZIvcnIen/3M+wR1YN95FopaPHCvSfiTlE2bUdIqQVW3v2bGOZVchOUaIDDBtEzg7iCc
|
||||
0KRm7L5mAAWQZy7FvWYR7jTwJ0lJnlV0+qC2JxC5VTyEXliOgHjjx+KA9b5knMV4d9Qu8I9RFEB6ainu
|
||||
Nrkhv95FI/q5rGMranp24FKNACHZRvCPM6kRy2z20Cak9ZL7FSoF2JHGxu16PgrqeSQVElS/DcCVp5sR
|
||||
et4M22ONVGK5tWatz1r3mwhCNyO/FDYpPgkqSZ6v1XmQwCvhHcNpEIesPkJ3y7/udlMliQbwjuP05j1z
|
||||
Q1iOBbyOGnZ67LdMJDNeS3K8TC6XL/67JE8zmh5IxOHmyZJYw273A6tOE0fWCQQCw3k7kPzzI9mc2qv7
|
||||
c50D/4sD3wHeuRvlgDZ3nAAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="bt_kill.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOHSURBVFhH7Zb7S1NxGMatzJ1mpVOzpWkWIRVRlM7prGam
|
||||
uOVyW+3m1C5KCyLpbv0m0T2I7gUVFRQEFVSWRFRE2o2iIlPnOTMvwZz0S/sDgqf3uxIiyPNVz48OPrDD
|
||||
3vM+z/u837MtKmr0NZrAaAKcCbQtU59pzYv92WaMhRytS9XnOdvylX0h8c4aPX48uIwfjVcH5+EVfN1o
|
||||
gGImWpaoT0oVC9F/Zif6jm3Ct702fNtj/S99Rzeh/1wdOjfo0DLSJD6ReEf5fIRObUfwqA+9e8rQW7dK
|
||||
luCRjQid2w1pQw4+D9fEx6Xq437XXBLf9lu8jsR3W7gJHq5B6OwuMqHDJzJxyxk1jm/hVMXE2xyZCJ3Y
|
||||
CjZN7y4S3lk6ZIIHqxE6vQNitR4feE28z5+wr8WagdDxLehjk0eEzcMmeGA9+mmFfu8CvMvneDre5sR8
|
||||
D6xbhOChavTsMKNne8mICe5fi84qMrBEDdk1NOcL4U5PJnq2kfDWYsX46p2Dt/k8BgxCOOCajZ7aIkVh
|
||||
Q702cBqQHLPQvaVQUdhQLw0T5FfQlCeEpdUZ6N5coCgBx0w05XEYeJ4rhEX7DIjWNEUJrMnA81wOA8/0
|
||||
ZICJW1IVJWBLxzM9h4EnZKCjLAUdpVpFkaypoN7yZ+BBjhD2W7Twm5OVY2UyRBrqcQ6HgUe6mO+iLQUB
|
||||
awr8JUmKIJVNg0T9GnRCWPaLqFGn2vfCGIcuTwakMi3aixNGhGiZii73DLwpSkBjtuqwrAFW0JAlnIyY
|
||||
cKVDKk1G+4r4YSGunIJu6vG6OBEN2cL5W/OiYrgMsKL7zMTy+N8mqFF7YdyQEM1J6Ham4VVRIu4x8SH8
|
||||
HI+pr68f6/P5xt/JFi68KKAknNMhmmkVyydxIZoSSDyVxDWgHpd8liy10+lk/wfGyCbAxGtra1UOhyOB
|
||||
mHldF3czkoSDHk2TBm0FEwelo0QTqW2mtd3Ijb9d5bbNJXFtZWVlrNFojJY1wZyyYrfbneZyuXQej6f0
|
||||
kmHqk6ZCDYI1s7lopskvGrRP6V479VhGvTLZQNSbnYHBU/g3AWqwkMi9ptfcvbNYBR5YbXl5eZ7X681i
|
||||
4kNKgDkcOAMWi0VdUVExmRpp2ATUNIk1s9vt01lC9D59AHZNE6dQ3RSbzZbI7qHP4oiJJpNJxX0G/jok
|
||||
LKqImQFYE7ZHdkAZLNIB2DXVRbOav+/5E/l/Y/8Fd+zUtiElh8IAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGGSURBVFhH7ZbPKwRxGMb3ZNbuQblNbbTRZidqm1k/1yJt
|
||||
22a1mNLi6qZoIyv/hvInOEqIthRKKSlJ+4OLmcXNyV/w+j7l6jDPHqRm6mlOz+f99F6+byDgf/4G/A38
|
||||
sgHDMNpM09Qty+pT/wEmP10dLM+LxvCzVGelNhmWVgIGWJ4FYF9Vwz8P9uTr6oQKumCA5VkAK3+aCMv7
|
||||
7oo0t4tU0AUDLErgMR2Wt51lcbeKVNAFgxZ4SIekWcbwRSrogkEL3I8rAQwv2VTQBYMWuEuFxN20xdmY
|
||||
p4IuGLTA7ZgSKC2Is16ggi4YtMDNaLu4avjrWp4KumDQAteq/GL3S6MQp4IuGLTA5YgSmFPD8zEq6IJB
|
||||
C1wMB+V5Nib1XA8VdMGgBSpDSmCmV+rZKBV0waAFzgeD0shFpZbpooIuGLTAaVIJZLulNh2hgi4YtMBx
|
||||
UpN6JiLVKZ0KumBQAnhCjyxNnKW4fKwmqKALBvsc6/uJjsqhqUkrAYM6SP78JPN8QPgFfwP/dQPf75A9
|
||||
ouq07JEAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>306, 17</value>
|
||||
</metadata>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD///8AAAAAAQAAAAIAAAAEAAAABwAAAAoAAAALAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAA
|
||||
AAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAACwAAAAoAAAAHAAAABAAA
|
||||
AAIAAAAB////AP///wAAAAACAAAABwAAAA0AAAAWAAAAHQAAACIAAAAkAAAAJAAAACQAAAAkAAAAJAAA
|
||||
ACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAiAAAAHQAA
|
||||
ABYAAAANAAAABwAAAAL///8A////AAAAAAQAAAANAAAAGwAAAC0AAAA6AAAAQwAAAEgAAABIAAAASAAA
|
||||
AEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAA
|
||||
AEMAAAA6AAAALQAAABsAAAANAAAABP///wD///8AAAAABwAAABZ9VjSpjWE7/41hO/+NYTv/jWE7/41h
|
||||
O/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41h
|
||||
O/+NYTv/jWE7/41hO/+NYTv/fVY0qQAAABYAAAAH////AP///wAAAAAKAAAAHY1hO/+0Yz3/tGM9/7Rj
|
||||
Pf/p0cX/3rqq/966qv/euqr/3rqq/966qv/euqr/3rqq/966qv/euqr/3rqq/966qv/euqr/6dHF/7Rj
|
||||
Pf/p0cX/3rqq/+nRxf+0Yz3/tGM9/7RjPf+NYTv/AAAAHQAAAAr///8A////AAAAAAsAAAAijWE7/7Vk
|
||||
Pv+1ZD7/tWQ+/+nRxf/eu6r/3ruq/967qv/eu6r/3ruq/967qv/eu6r/3ruq/967qv/eu6r/3ruq/967
|
||||
qv/p0cX/tWQ+/+nRxf/eu6r/6dHF/7VkPv+1ZD7/tWQ+/41hO/8AAAAiAAAAC////wD///8AAAAADAAA
|
||||
ACSNYTv/t2U//7dlP/+3ZT//6tHG/+rRxv/q0cb/6tHG/+rRxv/q0cb/6tHG/+rRxv/q0cb/6tHG/+rR
|
||||
xv/q0cb/6tHG/+rRxv+3ZT//6tHG/+rRxv/q0cb/t2U//7dlP/+3ZT//jWE7/wAAACQAAAAM////AP//
|
||||
/wAAAAAMAAAAJI1hO/+3Z0D/t2dA/7dnQP+3Z0D/t2dA/7dnQP+4aEH/uGlB/7hpQf+5aUL/uWpC/7lq
|
||||
Qv+5akL/uWpC/7lqQv+5aUL/uGlB/7hpQf+4aEH/t2dA/7dnQP+3Z0D/t2dA/7dnQP+NYTv/AAAAJAAA
|
||||
AAz///8A////AAAAAAwAAAAkjWE7/7lpQf+5aUH/uWlB/7lpQf+6akL/umtC/7trQ/+7bEP/vG1E/7xu
|
||||
RP+9bkT/vW5E/71vRf+9bkT/vW5E/7xuRP+8bUT/u2xD/7trQ/+6a0L/umpC/7lpQf+5aUH/uWlB/41h
|
||||
O/8AAAAkAAAADP///wD///8AAAAADAAAACSNYTv/umtD/7prQ/+6a0P/u2xE/7ttRP+8bkX/vW9G/75w
|
||||
Rv++cUf/v3JH/79zSP+/c0j/v3NI/79zSP+/c0j/v3JH/75xR/++cEb/vW9G/7xuRf+7bUT/u2xE/7pr
|
||||
Q/+6a0P/jWE7/wAAACQAAAAM////AP///wAAAAAMAAAAJI1hO/+7bUT/u21E/7xuRf+9cEb/vXFG/75y
|
||||
R/+/dEj/wHVJ/8F2Sv/Bd0r/wnhL/8J4S//CeUv/wnhL/8J4S//Bd0r/wXZK/8B1Sf+/dEj/vnJH/71x
|
||||
Rv+9cEb/vG5F/7ttRP+NYTv/AAAAJAAAAAz///8A////AAAAAAwAAAAkjWE7/71vRf++cEb/v3JH/79z
|
||||
R//AdUn/wXZK/8J4S//DeUv/xHtN/8V8Tf/FfU7/xn1O/8Z+Tv/GfU7/xX1O/8V8Tf/Ee03/w3lL/8J4
|
||||
S//Bdkr/wHVJ/79zR/+/ckf/vnBG/41hO/8AAAAkAAAADP///wD///8AAAAADAAAACSNYTv/v3JI/79z
|
||||
SP/AdUr/wXdL/8N5TP/Ee03/xX1P/8Z+T//HgFD/x4FR/8iCUv/Ig1L/yINS/8iDUv/IglL/x4FR/8eA
|
||||
UP/Gfk//xX1P/8R7Tf/DeUz/wXdL/8B1Sv+/c0j/jWE7/wAAACQAAAAM////AP///wAAAAAMAAAAJI1h
|
||||
O//XpYn/16aJ/9iniv/ZqYv/2aqM/9usjf/brY7/3K6O/9ywj//dsZD/3bKQ/96ykf/espH/3rKR/92y
|
||||
kP/dsZD/3LCP/9yujv/brY7/26yN/9mqjP/ZqYv/2KeK/9emif+NYTv/AAAAJAAAAAz///8A////AAAA
|
||||
AAwAAAAkjWE7/9eniv/YqIv/2aqM/9qsjf/brY7/3K+P/9ywkP/dspH/3rOS/960k//ftZP/37WU/9+1
|
||||
lP/ftZT/37WT/960k//es5L/3bKR/9ywkP/cr4//262O/9qsjf/Zqoz/2KiL/41hO/8AAAAkAAAADP//
|
||||
/wD///8AAAAADAAAACSNYTv/2amL/9mqjP/arI3/266O/9ywkP/dspH/3rOS/961k//gt5T/4LiV/+C5
|
||||
lv/huZb/4bmW/+G5lv/guZb/4LiV/+C3lP/etZP/3rOS/92ykf/csJD/266O/9qsjf/Zqoz/jWE7/wAA
|
||||
ACQAAAAM////AP///wAAAAAMAAAAJI1hO//aq4z/26yN/9yujv/csJD/3rKR/960kv/gtpT/4LiV/+G6
|
||||
lv/iu5b/4ryX/+O9l//jvZj/472X/+K8l//iu5b/4bqW/+C4lf/gtpT/3rSS/96ykf/csJD/3K6O/9us
|
||||
jf+NYTv/AAAAJAAAAAz///8A////AAAAAAsAAAAijWE7/9usjv/cro//3LCQ/96ykv/etJP/4LaU/+C4
|
||||
lv/iupf/4ryY/+O+mf/kv5r/5MCb/+TAm//kwJv/5L+a/+O+mf/ivJj/4rqX/+C4lv/gtpT/3rST/96y
|
||||
kv/csJD/3K6P/41hO/8AAAAiAAAAC////wD///8AAAAACgAAAB2NYTv/////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////jWE7/wAAAB0AAAAK////AP///wAAAAAHAAAAFo1hO///////3qqB////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////3qqB//////+NYTv/AAAAFgAAAAf///8A////AAAAAAQAAAANjWE7////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/////////////////////////////////////////////41hO/8AAAANAAAABP///wD///8AAAAAAgAA
|
||||
AAeJXjmbjWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41h
|
||||
O/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/jWE7/41hO/+NYTv/iV45mwAAAAcAAAAC////AP//
|
||||
/wAAAAABAAAAAgAAAAQAAAAHAAAACgAAAAsAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAA
|
||||
AAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAALAAAACgAAAAcAAAAEAAAAAgAA
|
||||
AAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
|
||||
/wD///8A////AP///wD///8AgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAA
|
||||
AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAH/////////////
|
||||
//////////////////////////////////8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
337
VMSMonitor/Frm_monitor.vb
Normal file
337
VMSMonitor/Frm_monitor.vb
Normal file
@@ -0,0 +1,337 @@
|
||||
Public Class Frm_monitor
|
||||
|
||||
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
|
||||
Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
|
||||
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Integer)
|
||||
Private Const WM_QUIT = &H12
|
||||
Private Const WM_CLOSE = &H10
|
||||
|
||||
Private ison As Boolean = False
|
||||
Private ismonitor As Boolean = False
|
||||
|
||||
Dim totaltime As TimeSpan
|
||||
Dim ercnt As Integer = 0
|
||||
Dim starttime As Integer = 0
|
||||
|
||||
Dim Xml As ArinXML
|
||||
|
||||
Dim Createfile As String = ""
|
||||
Dim CreateStart As String = ""
|
||||
Dim killon As Boolean = False
|
||||
|
||||
Dim fclose As Boolean = False
|
||||
Dim autoexit As Short = 0
|
||||
Dim runtime As String = Now.ToString
|
||||
Dim conffile As String = My.Application.Info.DirectoryPath & "\error.xml"
|
||||
Dim AutoClose As Boolean = False
|
||||
|
||||
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
|
||||
If Not AutoClose Then
|
||||
If MsgBox("정말로 종료하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") = MsgBoxResult.Ok Then
|
||||
Else
|
||||
e.Cancel = True
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
||||
Me.ProgressBar1.Minimum = 0
|
||||
Me.ProgressBar1.Maximum = 6
|
||||
|
||||
Dim a As New System.Text.StringBuilder
|
||||
a.AppendLine("이 프로그램은 VMS의 실행을 감지하는 프로그램입니다")
|
||||
a.AppendLine("VMS프로그램이 오류발생으로 작동을 멈출경우")
|
||||
a.AppendLine("초기화 및 재실행을 수행합니다.")
|
||||
a.AppendLine()
|
||||
Me.RichTextBox1.Text = a.ToString & vbCrLf
|
||||
totaltime = Nothing
|
||||
ercnt = 0
|
||||
Me.bt_monitor.PerformClick()
|
||||
End Sub
|
||||
|
||||
Public Function RunProcess(ByVal 파일이름 As String, Optional ByVal 실행옵션 As String = vbNullString) As Boolean
|
||||
|
||||
Try
|
||||
Dim RunP As Process
|
||||
Dim B As System.Diagnostics.ProcessStartInfo = New System.Diagnostics.ProcessStartInfo
|
||||
|
||||
If FileIO.FileSystem.FileExists(파일이름) Then
|
||||
B.FileName = 파일이름
|
||||
B.WorkingDirectory = 파일이름.Substring(0, 파일이름.LastIndexOf("\"))
|
||||
B.Arguments = 실행옵션
|
||||
RunP = Process.Start(B)
|
||||
Return True
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
Catch ex As Exception
|
||||
Msg("ERROR_RUNPROCESS->" & ex.Message.ToString)
|
||||
Return False
|
||||
End Try
|
||||
|
||||
|
||||
End Function
|
||||
Public Function checkmyproc() As Process
|
||||
Try
|
||||
Dim Prc() As Process = Process.GetProcesses '//현재프로세스배열을 가져온다.
|
||||
Dim MyPrc As Process
|
||||
For Each MyPrc In Prc
|
||||
If MyPrc.ProcessName.ToUpper.IndexOf("VMS.NET") <> -1 And MyPrc.ProcessName.ToUpper.IndexOf("VSHOST") = -1 Then
|
||||
Return MyPrc
|
||||
End If
|
||||
Next
|
||||
Return Nothing
|
||||
Catch ex As Exception
|
||||
Msg("ERROR_CHECKMYPROC->" & ex.Message.ToString)
|
||||
Return Nothing
|
||||
End Try
|
||||
|
||||
End Function
|
||||
Public Sub KillMyProc(ByVal 클래스명 As String)
|
||||
Try
|
||||
Dim Np As IntPtr
|
||||
Np = FindWindow(클래스명, vbNullString)
|
||||
'Me.lstOutput.Items.Add("WHND:" & Np.ToInt32.ToString)
|
||||
If Np = 0 Then
|
||||
'Form_Standard.MDIMessage.Text = "Cannot Find :" & 클래스명
|
||||
Exit Sub
|
||||
End If
|
||||
PostMessage(Np.ToInt32, WM_QUIT, 0&, 0&)
|
||||
Sleep(500)
|
||||
Catch ex As Exception
|
||||
Msg("ERROR_KIMMMYPROC->" & ex.Message.ToString)
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
Private Sub Msg(ByVal m As String)
|
||||
If Me.RichTextBox1.Text.Length > 10000 Then
|
||||
Try
|
||||
My.Computer.FileSystem.WriteAllText(My.Application.Info.DirectoryPath & "\" & Now.ToString("yyyyMMdd") & ".txt", Me.RichTextBox1.Text, True)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
Me.RichTextBox1.Text = ""
|
||||
End If
|
||||
|
||||
Me.RichTextBox1.AppendText("[" & Now.ToString("yyyy-MM-dd HH:mm:ss") & "] " & m & vbCrLf)
|
||||
My.Application.DoEvents()
|
||||
End Sub
|
||||
Public Sub oKillMyProc(ByVal 프로세스명 As String)
|
||||
Try
|
||||
Dim Prc() As Process = Process.GetProcesses '//현재프로세스배열을 가져온다.
|
||||
Dim MyPrc As Process
|
||||
Dim 파일명 As String = 프로세스명.Substring(프로세스명.LastIndexOf("\") + 1).ToUpper
|
||||
For Each MyPrc In Prc
|
||||
If (MyPrc.ProcessName & ".EXE").ToUpper = 파일명 Then
|
||||
|
||||
' MsgBox(MyPrc.StartInfo.Fileame)
|
||||
MyPrc.Kill()
|
||||
End If
|
||||
Next
|
||||
Sleep(500)
|
||||
Catch ex As Exception
|
||||
Msg("ERROR_OKILLMYPROC->" & ex.Message.ToString)
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
|
||||
Timer1.Enabled = False
|
||||
|
||||
Dim Prc As Process = checkmyproc()
|
||||
If Prc Is Nothing Then
|
||||
|
||||
'//프로세스가 없다.
|
||||
If Me.Timer2.Enabled = False Then
|
||||
autoexit += 1
|
||||
If autoexit > 3 Then
|
||||
AutoClose = True
|
||||
Me.Close()
|
||||
End If
|
||||
End If
|
||||
|
||||
ison = False
|
||||
Me.bt_kill.Enabled = False
|
||||
Me.bt_run.Enabled = True
|
||||
'Me.Text = "noprocee"
|
||||
Me.status_run.ForeColor = Color.Gray
|
||||
If Me.starttime > 0 Then
|
||||
Me.status_run.ForeColor = Color.Orange
|
||||
End If
|
||||
|
||||
|
||||
If System.IO.File.Exists(conffile) Then ''//에러파일이 존재하는지 확인한다.
|
||||
Dim buffer = My.Computer.FileSystem.ReadAllText(conffile, System.Text.Encoding.Default).Trim
|
||||
If buffer <> "" Then
|
||||
If buffer.Substring(0, 5) = "ERROR" Then
|
||||
If Me.Timer2.Enabled = False Then '//작동중이아니라면 실행한다.
|
||||
Me.ProgressBar1.ForeColor = Color.Green
|
||||
Me.Timer2.Enabled = True
|
||||
Me.Timer2.Start()
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
autoexit = 0
|
||||
Me.status_run.ForeColor = Color.Blue
|
||||
Me.bt_kill.Enabled = True
|
||||
Me.bt_run.Enabled = False
|
||||
|
||||
ison = True
|
||||
Try
|
||||
dispalyinfo(Prc)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End If
|
||||
|
||||
Timer1.Enabled = True
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub dispalyinfo(ByVal prc As Process)
|
||||
Try
|
||||
|
||||
Dim Eron As Boolean = False
|
||||
If System.IO.File.Exists(conffile) Then ''//에러파일이 존재하는지 확인한다.
|
||||
Dim buffer = My.Computer.FileSystem.ReadAllText(conffile, System.Text.Encoding.Default).Trim
|
||||
If buffer <> "" Then
|
||||
If buffer.Substring(0, 5) = "ERROR" Then
|
||||
If Me.Timer2.Enabled = False Then '//작동중이아니라면 실행한다.
|
||||
Eron = True
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If Eron Then
|
||||
Msg("VMS로부터 에러발생을 확인하였습니다")
|
||||
killon = True
|
||||
Else
|
||||
killon = False
|
||||
End If
|
||||
|
||||
'Buf.AppendLine("PROCESS NAME:" & prc.ProcessName)
|
||||
'Buf.AppendLine("Start Time:" & prc.StartTime.ToString())
|
||||
'Buf.AppendLine("Total time:" & prc.TotalProcessorTime.ToString())
|
||||
'Buf.AppendLine("SessionID:" & prc.SessionId.ToString)
|
||||
'Buf.AppendLine("Response:" & prc.Responding)
|
||||
'Buf.AppendLine("Handle:" & prc.Handle.ToString)
|
||||
'Buf.AppendLine("Handle Count:" & prc.HandleCount)
|
||||
'Buf.AppendLine("prc.HasExited:" & prc.HasExited)
|
||||
'Buf.AppendLine("prc.Id:" & prc.Id)
|
||||
'Buf.AppendLine("prc.MainWindowTitle:" & prc.MainWindowTitle)
|
||||
'Buf.AppendLine("prc.PrivilegedProcessorTime.ToString:" & prc.PrivilegedProcessorTime.ToString)
|
||||
'Buf.AppendLine("prc.UserProcessorTime.ToString:" & prc.UserProcessorTime.ToString)
|
||||
'Buf.AppendLine("Error Count:" & Me.ercnt)
|
||||
|
||||
|
||||
If killon Then '//10초를 넘도록
|
||||
|
||||
|
||||
Me.WindowState = FormWindowState.Normal
|
||||
|
||||
Me.RichTextBox1.BackColor = Color.Orange
|
||||
Msg("VMS 재실쟁 대기중 : 잠시만 기다려주세요.")
|
||||
|
||||
Me.Hide()
|
||||
Me.Show()
|
||||
My.Application.DoEvents()
|
||||
|
||||
bt_kill.PerformClick()
|
||||
|
||||
Sleep(2000)
|
||||
|
||||
Try
|
||||
System.IO.File.Delete(conffile)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Catch ex As Exception
|
||||
Msg("ERROR_DISPLAYINFO_->" & ex.Message.ToString)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
|
||||
starttime += 1
|
||||
Me.ProgressBar1.Value = starttime
|
||||
If starttime > 5 Then
|
||||
Me.ProgressBar1.Value = 0
|
||||
Me.ProgressBar1.ForeColor = Color.Red
|
||||
Me.bt_run.PerformClick()
|
||||
starttime = 0
|
||||
Me.Timer2.Stop()
|
||||
Me.Timer2.Enabled = False
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_monitor.Click
|
||||
Me.ProgressBar1.Value = 0
|
||||
|
||||
If Me.ismonitor Then
|
||||
Me.Timer1.Stop()
|
||||
Me.Timer1.Enabled = False
|
||||
Me.ismonitor = False
|
||||
Me.bt_monitor.Text = "모니터 시작"
|
||||
Msg("모니터링이 종료되었습니다.")
|
||||
Me.status_monitor.ForeColor = Color.Gray
|
||||
Else
|
||||
Me.Timer1.Enabled = True
|
||||
Me.Timer1.Start()
|
||||
Me.ismonitor = True
|
||||
Me.bt_monitor.Text = "모니터 종료"
|
||||
Msg("모니터링이 시작되었습니다.")
|
||||
Me.status_monitor.ForeColor = Color.Blue
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_run.Click
|
||||
If Me.ison Then
|
||||
MsgBox("중복실행이므로 실행을 할 수 없습니다", MsgBoxStyle.Information, "확인")
|
||||
Else
|
||||
RunProcess(My.Application.Info.DirectoryPath & "\cVMS.NET.exe", "")
|
||||
Msg("VMS프로그램을 실행합니다")
|
||||
Me.WindowState = FormWindowState.Minimized
|
||||
Me.RichTextBox1.BackColor = Nothing
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_kill.Click
|
||||
|
||||
Dim Prc As Process = checkmyproc()
|
||||
If Not Prc Is Nothing Then
|
||||
Try
|
||||
|
||||
Try
|
||||
System.IO.File.Delete(conffile)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
|
||||
Prc.Kill()
|
||||
Me.ProgressBar1.ForeColor = Color.Green
|
||||
starttime = 0
|
||||
Me.Timer2.Enabled = True
|
||||
Me.Timer2.Start()
|
||||
Catch ex As Exception
|
||||
Msg("ERROR_BTKILL_->" & ex.Message.ToString)
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
|
||||
Me.fclose = True
|
||||
End
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
44
VMSMonitor/My Project/Application.Designer.vb
generated
Normal file
44
VMSMonitor/My Project/Application.Designer.vb
generated
Normal file
@@ -0,0 +1,44 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' 이 코드는 도구를 사용하여 생성되었습니다.
|
||||
' 런타임 버전:4.0.30319.42000
|
||||
'
|
||||
' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
|
||||
' 이러한 변경 내용이 손실됩니다.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
'참고: 자동으로 생성되므로 직접 이 파일을 수정하지 마세요. 변경할 사항이 있거나
|
||||
' 파일에서 빌드 오류가 발생하는 경우 프로젝트 디자이너로
|
||||
' 이동([프로젝트 속성]으로 이동하거나 솔루션 탐색기에서 My Project 노드를
|
||||
'두 번 클릭)한 다음 [애플리케이션] 탭에서 변경하세요.
|
||||
'
|
||||
Partial Friend Class MyApplication
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Public Sub New()
|
||||
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
|
||||
Me.IsSingleInstance = false
|
||||
Me.EnableVisualStyles = true
|
||||
Me.SaveMySettingsOnExit = true
|
||||
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
|
||||
End Sub
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Protected Overrides Sub OnCreateMainForm()
|
||||
Me.MainForm = Global.VMSMonitor.Frm_monitor
|
||||
End Sub
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Protected Overrides Function OnInitialize(ByVal commandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String)) As Boolean
|
||||
Me.MinimumSplashScreenDisplayTime = 0
|
||||
Return MyBase.OnInitialize(commandLineArgs)
|
||||
End Function
|
||||
End Class
|
||||
End Namespace
|
||||
10
VMSMonitor/My Project/Application.myapp
Normal file
10
VMSMonitor/My Project/Application.myapp
Normal file
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-16"?>
|
||||
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<MySubMain>true</MySubMain>
|
||||
<MainForm>Frm_monitor</MainForm>
|
||||
<SingleInstance>false</SingleInstance>
|
||||
<ShutdownMode>0</ShutdownMode>
|
||||
<EnableVisualStyles>true</EnableVisualStyles>
|
||||
<AuthenticationMode>0</AuthenticationMode>
|
||||
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
|
||||
</MyApplicationData>
|
||||
35
VMSMonitor/My Project/AssemblyInfo.vb
Normal file
35
VMSMonitor/My Project/AssemblyInfo.vb
Normal file
@@ -0,0 +1,35 @@
|
||||
Imports System
|
||||
Imports System.Reflection
|
||||
Imports System.Runtime.InteropServices
|
||||
|
||||
' 어셈블리의 일반 정보는 다음 특성 집합을 통해 제어됩니다.
|
||||
' 어셈블리와 관련된 정보를 수정하려면
|
||||
' 이 특성 값을 변경하십시오.
|
||||
|
||||
' 어셈블리 특성 값을 검토합니다.
|
||||
|
||||
<Assembly: AssemblyTitle("VMSMonitor")>
|
||||
<Assembly: AssemblyDescription("")>
|
||||
<Assembly: AssemblyCompany("")>
|
||||
<Assembly: AssemblyProduct("VMSMonitor")>
|
||||
<Assembly: AssemblyCopyright("Copyright ©Arinware 2012")>
|
||||
<Assembly: AssemblyTrademark("")>
|
||||
|
||||
<Assembly: ComVisible(False)>
|
||||
|
||||
'이 프로젝트가 COM에 노출되는 경우 다음 GUID는 typelib의 ID를 나타냅니다.
|
||||
<Assembly: Guid("16fe3d11-55f7-4bfc-a33b-422036072665")>
|
||||
|
||||
' 어셈블리의 버전 정보는 다음 네 가지 값으로 구성됩니다.
|
||||
'
|
||||
' 주 버전
|
||||
' 부 버전
|
||||
' 빌드 번호
|
||||
' 수정 버전
|
||||
'
|
||||
' 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 버전이 자동으로
|
||||
' 지정되도록 할 수 있습니다.
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.0.*")>
|
||||
<Assembly: AssemblyFileVersion("1.0.0.62")>
|
||||
63
VMSMonitor/My Project/Resources.Designer.vb
generated
Normal file
63
VMSMonitor/My Project/Resources.Designer.vb
generated
Normal file
@@ -0,0 +1,63 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' 이 코드는 도구를 사용하여 생성되었습니다.
|
||||
' 런타임 버전:4.0.30319.42000
|
||||
'
|
||||
' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
|
||||
' 이러한 변경 내용이 손실됩니다.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
Imports System
|
||||
|
||||
Namespace My.Resources
|
||||
|
||||
'이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
|
||||
'클래스에서 자동으로 생성되었습니다.
|
||||
'멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을
|
||||
'다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
|
||||
'''<summary>
|
||||
''' 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
|
||||
'''</summary>
|
||||
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0"), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
|
||||
Friend Module Resources
|
||||
|
||||
Private resourceMan As Global.System.Resources.ResourceManager
|
||||
|
||||
Private resourceCulture As Global.System.Globalization.CultureInfo
|
||||
|
||||
'''<summary>
|
||||
''' 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
|
||||
'''</summary>
|
||||
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
|
||||
Get
|
||||
If Object.ReferenceEquals(resourceMan, Nothing) Then
|
||||
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("VMSMonitor.Resources", GetType(Resources).Assembly)
|
||||
resourceMan = temp
|
||||
End If
|
||||
Return resourceMan
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대해 현재 스레드의 CurrentUICulture 속성을
|
||||
''' 재정의합니다.
|
||||
'''</summary>
|
||||
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Friend Property Culture() As Global.System.Globalization.CultureInfo
|
||||
Get
|
||||
Return resourceCulture
|
||||
End Get
|
||||
Set
|
||||
resourceCulture = value
|
||||
End Set
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
||||
117
VMSMonitor/My Project/Resources.resx
Normal file
117
VMSMonitor/My Project/Resources.resx
Normal file
@@ -0,0 +1,117 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
73
VMSMonitor/My Project/Settings.Designer.vb
generated
Normal file
73
VMSMonitor/My Project/Settings.Designer.vb
generated
Normal file
@@ -0,0 +1,73 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' 이 코드는 도구를 사용하여 생성되었습니다.
|
||||
' 런타임 버전:4.0.30319.42000
|
||||
'
|
||||
' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
|
||||
' 이러한 변경 내용이 손실됩니다.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.11.0.0"), _
|
||||
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Partial Friend NotInheritable Class MySettings
|
||||
Inherits Global.System.Configuration.ApplicationSettingsBase
|
||||
|
||||
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
|
||||
|
||||
#Region "My.Settings 자동 저장 기능"
|
||||
#If _MyType = "WindowsForms" Then
|
||||
Private Shared addedHandler As Boolean
|
||||
|
||||
Private Shared addedHandlerLockObject As New Object
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
|
||||
If My.Application.SaveMySettingsOnExit Then
|
||||
My.Settings.Save()
|
||||
End If
|
||||
End Sub
|
||||
#End If
|
||||
#End Region
|
||||
|
||||
Public Shared ReadOnly Property [Default]() As MySettings
|
||||
Get
|
||||
|
||||
#If _MyType = "WindowsForms" Then
|
||||
If Not addedHandler Then
|
||||
SyncLock addedHandlerLockObject
|
||||
If Not addedHandler Then
|
||||
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
|
||||
addedHandler = True
|
||||
End If
|
||||
End SyncLock
|
||||
End If
|
||||
#End If
|
||||
Return defaultInstance
|
||||
End Get
|
||||
End Property
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
|
||||
Friend Module MySettingsProperty
|
||||
|
||||
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
|
||||
Friend ReadOnly Property Settings() As Global.VMSMonitor.My.MySettings
|
||||
Get
|
||||
Return Global.VMSMonitor.My.MySettings.Default
|
||||
End Get
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
||||
7
VMSMonitor/My Project/Settings.settings
Normal file
7
VMSMonitor/My Project/Settings.settings
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
20
VMSMonitor/VMSMonitor.sln
Normal file
20
VMSMonitor/VMSMonitor.sln
Normal file
@@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "VMSMonitor", "VMSMonitor.vbproj", "{FD1E7E91-6D8F-4B42-BAFF-18C28E8DFE79}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{FD1E7E91-6D8F-4B42-BAFF-18C28E8DFE79}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{FD1E7E91-6D8F-4B42-BAFF-18C28E8DFE79}.Debug|x86.Build.0 = Debug|x86
|
||||
{FD1E7E91-6D8F-4B42-BAFF-18C28E8DFE79}.Release|x86.ActiveCfg = Release|x86
|
||||
{FD1E7E91-6D8F-4B42-BAFF-18C28E8DFE79}.Release|x86.Build.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
148
VMSMonitor/VMSMonitor.vbproj
Normal file
148
VMSMonitor/VMSMonitor.vbproj
Normal file
@@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<ProductVersion>
|
||||
</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{FD1E7E91-6D8F-4B42-BAFF-18C28E8DFE79}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<StartupObject>VMSMonitor.My.MyApplication</StartupObject>
|
||||
<RootNamespace>VMSMonitor</RootNamespace>
|
||||
<AssemblyName>VMSMonitor</AssemblyName>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<MyType>WindowsForms</MyType>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<DefineDebug>true</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DocumentationFile>
|
||||
</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<DefineDebug>false</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\cVMS.NET\bin\Debug\</OutputPath>
|
||||
<DocumentationFile>
|
||||
</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionExplicit>On</OptionExplicit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionCompare>Binary</OptionCompare>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionStrict>Off</OptionStrict>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionInfer>On</OptionInfer>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>monitor.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Import Include="Microsoft.VisualBasic" />
|
||||
<Import Include="System" />
|
||||
<Import Include="System.Collections" />
|
||||
<Import Include="System.Collections.Generic" />
|
||||
<Import Include="System.Data" />
|
||||
<Import Include="System.Drawing" />
|
||||
<Import Include="System.Diagnostics" />
|
||||
<Import Include="System.Windows.Forms" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="ArinXMl.vb" />
|
||||
<Compile Include="Frm_monitor.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Frm_monitor.Designer.vb">
|
||||
<DependentUpon>Frm_monitor.vb</DependentUpon>
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="My Project\AssemblyInfo.vb" />
|
||||
<Compile Include="My Project\Application.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Application.myapp</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Resources.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Settings.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Frm_monitor.resx">
|
||||
<DependentUpon>Frm_monitor.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="My Project\Resources.resx">
|
||||
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
|
||||
<CustomToolNamespace>My.Resources</CustomToolNamespace>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
<None Include="My Project\Application.myapp">
|
||||
<Generator>MyApplicationCodeGenerator</Generator>
|
||||
<LastGenOutput>Application.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
<None Include="My Project\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<CustomToolNamespace>My</CustomToolNamespace>
|
||||
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="monitor.ico" />
|
||||
<Content Include="system.ico" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>for %25%25F in ("$(TargetDir)*.exe") do (
|
||||
|
||||
xcopy "%25%25F" "..\..\..\cVMS.NET_CS\bin\Debug" /Y /R /D
|
||||
|
||||
echo Copied %25%25F to "..\..\..\cVMS.NET_CS\bin\Debug"
|
||||
|
||||
)
|
||||
</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
||||
BIN
VMSMonitor/monitor.ico
Normal file
BIN
VMSMonitor/monitor.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
BIN
VMSMonitor/system.ico
Normal file
BIN
VMSMonitor/system.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
Reference in New Issue
Block a user