Selaa lähdekoodia

1. 更新檔程式

卓叡 5 kuukautta sitten
commit
6b998acdf1
40 muutettua tiedostoa jossa 3241 lisäystä ja 0 poistoa
  1. 25
    0
      OW-UPDATE.sln
  2. 6
    0
      OW-UPDATE/App.config
  3. 38
    0
      OW-UPDATE/My Project/Application.Designer.vb
  4. 11
    0
      OW-UPDATE/My Project/Application.myapp
  5. 35
    0
      OW-UPDATE/My Project/AssemblyInfo.vb
  6. 62
    0
      OW-UPDATE/My Project/Resources.Designer.vb
  7. 117
    0
      OW-UPDATE/My Project/Resources.resx
  8. 73
    0
      OW-UPDATE/My Project/Settings.Designer.vb
  9. 7
    0
      OW-UPDATE/My Project/Settings.settings
  10. 390
    0
      OW-UPDATE/OW-UPDATE.Designer.vb
  11. 1574
    0
      OW-UPDATE/OW-UPDATE.resx
  12. 392
    0
      OW-UPDATE/OW-UPDATE.vb
  13. 140
    0
      OW-UPDATE/OW-UPDATE.vbproj
  14. 20
    0
      OW-UPDATE/SQL_Module.vb
  15. 68
    0
      OW-UPDATE/SQL_連線狀態模組1.vb
  16. 68
    0
      OW-UPDATE/SQL_連線狀態模組2.vb
  17. 79
    0
      OW-UPDATE/app.manifest
  18. 1
    0
      OW-UPDATE/bin/Debug/OPUPDATE.txt
  19. BIN
      OW-UPDATE/bin/Debug/OW-UPDATE.exe
  20. 6
    0
      OW-UPDATE/bin/Debug/OW-UPDATE.exe.config
  21. BIN
      OW-UPDATE/bin/Debug/OW-UPDATE.pdb
  22. 44
    0
      OW-UPDATE/bin/Debug/OW-UPDATE.xml
  23. 1
    0
      OW-UPDATE/bin/Debug/OWUPDATE.txt
  24. 7
    0
      OW-UPDATE/obj/Debug/.NETFramework,Version=v4.6.AssemblyAttributes.vb
  25. BIN
      OW-UPDATE/obj/Debug/DesignTimeResolveAssemblyReferences.cache
  26. BIN
      OW-UPDATE/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
  27. BIN
      OW-UPDATE/obj/Debug/OW-UPDATE.exe
  28. BIN
      OW-UPDATE/obj/Debug/OW-UPDATE.pdb
  29. BIN
      OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.AssemblyReference.cache
  30. 1
    0
      OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.CoreCompileInputs.cache
  31. 13
    0
      OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.FileListAbsolute.txt
  32. BIN
      OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.GenerateResource.cache
  33. 0
    0
      OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.SuggestedBindingRedirects.cache
  34. 44
    0
      OW-UPDATE/obj/Debug/OW-UPDATE.xml
  35. BIN
      OW-UPDATE/obj/Debug/OW_UPDATE.OW_UPDATE.resources
  36. BIN
      OW-UPDATE/obj/Debug/OW_UPDATE.Resources.resources
  37. BIN
      OW-UPDATE/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll
  38. BIN
      OW-UPDATE/update_icon.ico
  39. 19
    0
      OW-UPDATE/全域變數.vb
  40. BIN
      OW-UPDATE/圖片/update_icon.ico

+ 25
- 0
OW-UPDATE.sln Näytä tiedosto

1
+
2
+Microsoft Visual Studio Solution File, Format Version 12.00
3
+# Visual Studio Version 17
4
+VisualStudioVersion = 17.6.33723.286
5
+MinimumVisualStudioVersion = 10.0.40219.1
6
+Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "OW-UPDATE", "OW-UPDATE\OW-UPDATE.vbproj", "{ADD3D8F6-C9BA-40B0-9347-482514E260DC}"
7
+EndProject
8
+Global
9
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
10
+		Debug|Any CPU = Debug|Any CPU
11
+		Release|Any CPU = Release|Any CPU
12
+	EndGlobalSection
13
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
14
+		{ADD3D8F6-C9BA-40B0-9347-482514E260DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15
+		{ADD3D8F6-C9BA-40B0-9347-482514E260DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
16
+		{ADD3D8F6-C9BA-40B0-9347-482514E260DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
17
+		{ADD3D8F6-C9BA-40B0-9347-482514E260DC}.Release|Any CPU.Build.0 = Release|Any CPU
18
+	EndGlobalSection
19
+	GlobalSection(SolutionProperties) = preSolution
20
+		HideSolutionNode = FALSE
21
+	EndGlobalSection
22
+	GlobalSection(ExtensibilityGlobals) = postSolution
23
+		SolutionGuid = {423759BF-9882-4FA4-941B-2DD6F25719C8}
24
+	EndGlobalSection
25
+EndGlobal

+ 6
- 0
OW-UPDATE/App.config Näytä tiedosto

1
+<?xml version="1.0" encoding="utf-8" ?>
2
+<configuration>
3
+    <startup>
4
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
5
+    </startup>
6
+</configuration>

+ 38
- 0
OW-UPDATE/My Project/Application.Designer.vb Näytä tiedosto

1
+'------------------------------------------------------------------------------
2
+' <auto-generated>
3
+'     這段程式碼是由工具產生的。
4
+'     執行階段版本:4.0.30319.42000
5
+'
6
+'     對這個檔案所做的變更可能會造成錯誤的行為,而且如果重新產生程式碼,
7
+'     變更將會遺失。
8
+' </auto-generated>
9
+'------------------------------------------------------------------------------
10
+
11
+Option Strict On
12
+Option Explicit On
13
+
14
+
15
+Namespace My
16
+    
17
+    '注意:這是自動產生的檔案,請勿直接修改它。若要進行變更,
18
+    ' 或者您在這個檔案發生建置錯誤,請到專案設計工具
19
+    ' (移至專案屬性或者在 [方案總管] 中按兩下 [My Project] 節點),
20
+    ' 然後在 [應用程式] 索引標籤上進行變更。
21
+    '
22
+    Partial Friend Class MyApplication
23
+        
24
+        <Global.System.Diagnostics.DebuggerStepThroughAttribute()>  _
25
+        Public Sub New()
26
+            MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
27
+            Me.IsSingleInstance = false
28
+            Me.EnableVisualStyles = true
29
+            Me.SaveMySettingsOnExit = true
30
+            Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
31
+        End Sub
32
+        
33
+        <Global.System.Diagnostics.DebuggerStepThroughAttribute()>  _
34
+        Protected Overrides Sub OnCreateMainForm()
35
+            Me.MainForm = Global.OW_UPDATE.OW_UPDATE
36
+        End Sub
37
+    End Class
38
+End Namespace

+ 11
- 0
OW-UPDATE/My Project/Application.myapp Näytä tiedosto

1
+<?xml version="1.0" encoding="utf-8"?>
2
+<MyApplicationData xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3
+  <MySubMain>true</MySubMain>
4
+  <MainForm>OW_UPDATE</MainForm>
5
+  <SingleInstance>false</SingleInstance>
6
+  <ShutdownMode>0</ShutdownMode>
7
+  <EnableVisualStyles>true</EnableVisualStyles>
8
+  <AuthenticationMode>0</AuthenticationMode>
9
+  <SaveMySettingsOnExit>true</SaveMySettingsOnExit>
10
+  <HighDpiMpde>false</HighDpiMpde>
11
+</MyApplicationData>

+ 35
- 0
OW-UPDATE/My Project/AssemblyInfo.vb Näytä tiedosto

1
+Imports System
2
+Imports System.Reflection
3
+Imports System.Runtime.InteropServices
4
+
5
+' 組件的一般資訊是由下列的屬性集控制。
6
+' 變更這些屬性的值即可修改組件的相關
7
+' 資訊。
8
+
9
+' 檢閱組件屬性的值
10
+
11
+<Assembly: AssemblyTitle("OW-UPDATE")>
12
+<Assembly: AssemblyDescription("")>
13
+<Assembly: AssemblyCompany("")>
14
+<Assembly: AssemblyProduct("OW-UPDATE")>
15
+<Assembly: AssemblyCopyright("Copyright ©  2023")>
16
+<Assembly: AssemblyTrademark("")>
17
+
18
+<Assembly: ComVisible(False)>
19
+
20
+'下列 GUID 為專案公開 (Expose) 至 COM 時所要使用的 typelib ID
21
+<Assembly: Guid("01ad41af-564c-4e2d-a13b-8081708f61c7")>
22
+
23
+' 組件的版本資訊由下列四個值所組成: 
24
+'
25
+'      主要版本
26
+'      次要版本
27
+'      組建編號
28
+'      修訂編號
29
+'
30
+' 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
31
+' 設為預設,如下所示:
32
+' <Assembly: AssemblyVersion("1.0.*")>
33
+
34
+<Assembly: AssemblyVersion("1.0.0.0")>
35
+<Assembly: AssemblyFileVersion("1.0.0.0")>

+ 62
- 0
OW-UPDATE/My Project/Resources.Designer.vb Näytä tiedosto

1
+'------------------------------------------------------------------------------
2
+' <auto-generated>
3
+'     This code was generated by a tool.
4
+'     Runtime Version:4.0.30319.42000
5
+'
6
+'     Changes to this file may cause incorrect behavior and will be lost if
7
+'     the code is regenerated.
8
+' </auto-generated>
9
+'------------------------------------------------------------------------------
10
+
11
+Option Strict On
12
+Option Explicit On
13
+
14
+
15
+Namespace My.Resources
16
+
17
+    'This class was auto-generated by the StronglyTypedResourceBuilder
18
+    'class via a tool like ResGen or Visual Studio.
19
+    'To add or remove a member, edit your .ResX file then rerun ResGen
20
+    'with the /str option, or rebuild your VS project.
21
+    '''<summary>
22
+    '''  A strongly-typed resource class, for looking up localized strings, etc.
23
+    '''</summary>
24
+    <Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
25
+     Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
26
+     Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
27
+     Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
28
+    Friend Module Resources
29
+
30
+        Private resourceMan As Global.System.Resources.ResourceManager
31
+
32
+        Private resourceCulture As Global.System.Globalization.CultureInfo
33
+
34
+        '''<summary>
35
+        '''  Returns the cached ResourceManager instance used by this class.
36
+        '''</summary>
37
+        <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
38
+        Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
39
+            Get
40
+                If Object.ReferenceEquals(resourceMan, Nothing) Then
41
+                    Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("OW_UPDATE.Resources", GetType(Resources).Assembly)
42
+                    resourceMan = temp
43
+                End If
44
+                Return resourceMan
45
+            End Get
46
+        End Property
47
+
48
+        '''<summary>
49
+        '''  Overrides the current thread's CurrentUICulture property for all
50
+        '''  resource lookups using this strongly typed resource class.
51
+        '''</summary>
52
+        <Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
53
+        Friend Property Culture() As Global.System.Globalization.CultureInfo
54
+            Get
55
+                Return resourceCulture
56
+            End Get
57
+            Set(ByVal value As Global.System.Globalization.CultureInfo)
58
+                resourceCulture = value
59
+            End Set
60
+        End Property
61
+    End Module
62
+End Namespace

+ 117
- 0
OW-UPDATE/My Project/Resources.resx Näytä tiedosto

1
+<?xml version="1.0" encoding="utf-8"?>
2
+<root>
3
+  <!-- 
4
+    Microsoft ResX Schema 
5
+    
6
+    Version 2.0
7
+    
8
+    The primary goals of this format is to allow a simple XML format 
9
+    that is mostly human readable. The generation and parsing of the 
10
+    various data types are done through the TypeConverter classes 
11
+    associated with the data types.
12
+    
13
+    Example:
14
+    
15
+    ... ado.net/XML headers & schema ...
16
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
17
+    <resheader name="version">2.0</resheader>
18
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
21
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
24
+    </data>
25
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
27
+        <comment>This is a comment</comment>
28
+    </data>
29
+                
30
+    There are any number of "resheader" rows that contain simple 
31
+    name/value pairs.
32
+    
33
+    Each data row contains a name, and value. The row also contains a 
34
+    type or mimetype. Type corresponds to a .NET class that support 
35
+    text/value conversion through the TypeConverter architecture. 
36
+    Classes that don't support this are serialized and stored with the 
37
+    mimetype set.
38
+    
39
+    The mimetype is used for serialized objects, and tells the 
40
+    ResXResourceReader how to depersist the object. This is currently not 
41
+    extensible. For a given mimetype the value must be set accordingly:
42
+    
43
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
44
+    that the ResXResourceWriter will generate, however the reader can 
45
+    read any of the formats listed below.
46
+    
47
+    mimetype: application/x-microsoft.net.object.binary.base64
48
+    value   : The object must be serialized with 
49
+            : System.Serialization.Formatters.Binary.BinaryFormatter
50
+            : and then encoded with base64 encoding.
51
+    
52
+    mimetype: application/x-microsoft.net.object.soap.base64
53
+    value   : The object must be serialized with 
54
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
55
+            : and then encoded with base64 encoding.
56
+
57
+    mimetype: application/x-microsoft.net.object.bytearray.base64
58
+    value   : The object must be serialized into a byte array 
59
+            : using a System.ComponentModel.TypeConverter
60
+            : and then encoded with base64 encoding.
61
+    -->
62
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
+    <xsd:element name="root" msdata:IsDataSet="true">
64
+      <xsd:complexType>
65
+        <xsd:choice maxOccurs="unbounded">
66
+          <xsd:element name="metadata">
67
+            <xsd:complexType>
68
+              <xsd:sequence>
69
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
70
+              </xsd:sequence>
71
+              <xsd:attribute name="name" type="xsd:string" />
72
+              <xsd:attribute name="type" type="xsd:string" />
73
+              <xsd:attribute name="mimetype" type="xsd:string" />
74
+            </xsd:complexType>
75
+          </xsd:element>
76
+          <xsd:element name="assembly">
77
+            <xsd:complexType>
78
+              <xsd:attribute name="alias" type="xsd:string" />
79
+              <xsd:attribute name="name" type="xsd:string" />
80
+            </xsd:complexType>
81
+          </xsd:element>
82
+          <xsd:element name="data">
83
+            <xsd:complexType>
84
+              <xsd:sequence>
85
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
86
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
87
+              </xsd:sequence>
88
+              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
89
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
90
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
91
+            </xsd:complexType>
92
+          </xsd:element>
93
+          <xsd:element name="resheader">
94
+            <xsd:complexType>
95
+              <xsd:sequence>
96
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
97
+              </xsd:sequence>
98
+              <xsd:attribute name="name" type="xsd:string" use="required" />
99
+            </xsd:complexType>
100
+          </xsd:element>
101
+        </xsd:choice>
102
+      </xsd:complexType>
103
+    </xsd:element>
104
+  </xsd:schema>
105
+  <resheader name="resmimetype">
106
+    <value>text/microsoft-resx</value>
107
+  </resheader>
108
+  <resheader name="version">
109
+    <value>2.0</value>
110
+  </resheader>
111
+  <resheader name="reader">
112
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
113
+  </resheader>
114
+  <resheader name="writer">
115
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116
+  </resheader>
117
+</root>

+ 73
- 0
OW-UPDATE/My Project/Settings.Designer.vb Näytä tiedosto

1
+'------------------------------------------------------------------------------
2
+' <auto-generated>
3
+'     This code was generated by a tool.
4
+'     Runtime Version:4.0.30319.42000
5
+'
6
+'     Changes to this file may cause incorrect behavior and will be lost if
7
+'     the code is regenerated.
8
+' </auto-generated>
9
+'------------------------------------------------------------------------------
10
+
11
+Option Strict On
12
+Option Explicit On
13
+
14
+
15
+Namespace My
16
+
17
+    <Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
18
+     Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0"), _
19
+     Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
20
+    Partial Friend NotInheritable Class MySettings
21
+        Inherits Global.System.Configuration.ApplicationSettingsBase
22
+
23
+        Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
24
+
25
+#Region "My.Settings Auto-Save Functionality"
26
+#If _MyType = "WindowsForms" Then
27
+        Private Shared addedHandler As Boolean
28
+
29
+        Private Shared addedHandlerLockObject As New Object
30
+
31
+        <Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
32
+        Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33
+            If My.Application.SaveMySettingsOnExit Then
34
+                My.Settings.Save()
35
+            End If
36
+        End Sub
37
+#End If
38
+#End Region
39
+
40
+        Public Shared ReadOnly Property [Default]() As MySettings
41
+            Get
42
+
43
+#If _MyType = "WindowsForms" Then
44
+                   If Not addedHandler Then
45
+                        SyncLock addedHandlerLockObject
46
+                            If Not addedHandler Then
47
+                                AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48
+                                addedHandler = True
49
+                            End If
50
+                        End SyncLock
51
+                    End If
52
+#End If
53
+                Return defaultInstance
54
+            End Get
55
+        End Property
56
+    End Class
57
+End Namespace
58
+
59
+Namespace My
60
+
61
+    <Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
62
+     Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
63
+     Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
64
+    Friend Module MySettingsProperty
65
+
66
+        <Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
67
+        Friend ReadOnly Property Settings() As Global.OW_UPDATE.My.MySettings
68
+            Get
69
+                Return Global.OW_UPDATE.My.MySettings.Default
70
+            End Get
71
+        End Property
72
+    End Module
73
+End Namespace

+ 7
- 0
OW-UPDATE/My Project/Settings.settings Näytä tiedosto

1
+<?xml version='1.0' encoding='utf-8'?>
2
+<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
3
+  <Profiles>
4
+    <Profile Name="(Default)" />
5
+  </Profiles>
6
+  <Settings />
7
+</SettingsFile>

+ 390
- 0
OW-UPDATE/OW-UPDATE.Designer.vb Näytä tiedosto

1
+<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
2
+Partial Class OW_UPDATE
3
+    Inherits System.Windows.Forms.Form
4
+
5
+    'Form 覆寫 Dispose 以清除元件清單。
6
+    <System.Diagnostics.DebuggerNonUserCode()> _
7
+    Protected Overrides Sub Dispose(ByVal disposing As Boolean)
8
+        Try
9
+            If disposing AndAlso components IsNot Nothing Then
10
+                components.Dispose()
11
+            End If
12
+        Finally
13
+            MyBase.Dispose(disposing)
14
+        End Try
15
+    End Sub
16
+
17
+    '為 Windows Form 設計工具的必要項
18
+    Private components As System.ComponentModel.IContainer
19
+
20
+    '注意: 以下為 Windows Form 設計工具所需的程序
21
+    '可以使用 Windows Form 設計工具進行修改。
22
+    '請勿使用程式碼編輯器進行修改。
23
+    <System.Diagnostics.DebuggerStepThrough()> _
24
+    Private Sub InitializeComponent()
25
+        Me.components = New System.ComponentModel.Container()
26
+        Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(OW_UPDATE))
27
+        Me.驗證存在4 = New System.Windows.Forms.Timer(Me.components)
28
+        Me.驗證存在2 = New System.Windows.Forms.Timer(Me.components)
29
+        Me.大更新_ch = New System.Windows.Forms.CheckBox()
30
+        Me.中更新_ch = New System.Windows.Forms.CheckBox()
31
+        Me.小更新_ch = New System.Windows.Forms.CheckBox()
32
+        Me.CheckBox11 = New System.Windows.Forms.CheckBox()
33
+        Me.CheckBox10 = New System.Windows.Forms.CheckBox()
34
+        Me.CheckBox9 = New System.Windows.Forms.CheckBox()
35
+        Me.CheckBox8 = New System.Windows.Forms.CheckBox()
36
+        Me.CheckBox7 = New System.Windows.Forms.CheckBox()
37
+        Me.驗證存在1 = New System.Windows.Forms.Timer(Me.components)
38
+        Me.刪除在下載 = New System.Windows.Forms.Timer(Me.components)
39
+        Me.主程式更新 = New System.Windows.Forms.Timer(Me.components)
40
+        Me.CheckBox6 = New System.Windows.Forms.CheckBox()
41
+        Me.CheckBox5 = New System.Windows.Forms.CheckBox()
42
+        Me.CheckBox4 = New System.Windows.Forms.CheckBox()
43
+        Me.CheckBox2 = New System.Windows.Forms.CheckBox()
44
+        Me.ProgressBar1 = New System.Windows.Forms.ProgressBar()
45
+        Me.驗證存在3 = New System.Windows.Forms.Timer(Me.components)
46
+        Me.CheckBox3 = New System.Windows.Forms.CheckBox()
47
+        Me.CheckBox1 = New System.Windows.Forms.CheckBox()
48
+        Me.伺服器區域_cb = New System.Windows.Forms.ComboBox()
49
+        Me.ftp清單_dgv = New System.Windows.Forms.DataGridView()
50
+        Me.驗證存在6 = New System.Windows.Forms.Timer(Me.components)
51
+        Me.驗證存在7 = New System.Windows.Forms.Timer(Me.components)
52
+        Me.刪除所有檔案 = New System.Windows.Forms.Timer(Me.components)
53
+        Me.OK = New System.Windows.Forms.Timer(Me.components)
54
+        Me.HX_CL = New System.Windows.Forms.Timer(Me.components)
55
+        Me.中更新 = New System.Windows.Forms.Timer(Me.components)
56
+        Me.小更新 = New System.Windows.Forms.Timer(Me.components)
57
+        Me.驗證存在5 = New System.Windows.Forms.Timer(Me.components)
58
+        Me.大更新 = New System.Windows.Forms.Timer(Me.components)
59
+        CType(Me.ftp清單_dgv, System.ComponentModel.ISupportInitialize).BeginInit()
60
+        Me.SuspendLayout()
61
+        '
62
+        '驗證存在4
63
+        '
64
+        Me.驗證存在4.Interval = 300
65
+        '
66
+        '驗證存在2
67
+        '
68
+        Me.驗證存在2.Interval = 300
69
+        '
70
+        '大更新_ch
71
+        '
72
+        Me.大更新_ch.AutoSize = True
73
+        Me.大更新_ch.Enabled = False
74
+        Me.大更新_ch.Location = New System.Drawing.Point(206, 66)
75
+        Me.大更新_ch.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
76
+        Me.大更新_ch.Name = "大更新_ch"
77
+        Me.大更新_ch.Size = New System.Drawing.Size(76, 24)
78
+        Me.大更新_ch.TabIndex = 685
79
+        Me.大更新_ch.Text = "大更新"
80
+        Me.大更新_ch.UseVisualStyleBackColor = True
81
+        '
82
+        '中更新_ch
83
+        '
84
+        Me.中更新_ch.AutoSize = True
85
+        Me.中更新_ch.Enabled = False
86
+        Me.中更新_ch.Location = New System.Drawing.Point(108, 66)
87
+        Me.中更新_ch.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
88
+        Me.中更新_ch.Name = "中更新_ch"
89
+        Me.中更新_ch.Size = New System.Drawing.Size(76, 24)
90
+        Me.中更新_ch.TabIndex = 684
91
+        Me.中更新_ch.Text = "中更新"
92
+        Me.中更新_ch.UseVisualStyleBackColor = True
93
+        '
94
+        '小更新_ch
95
+        '
96
+        Me.小更新_ch.AutoSize = True
97
+        Me.小更新_ch.Enabled = False
98
+        Me.小更新_ch.Location = New System.Drawing.Point(10, 66)
99
+        Me.小更新_ch.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
100
+        Me.小更新_ch.Name = "小更新_ch"
101
+        Me.小更新_ch.Size = New System.Drawing.Size(76, 24)
102
+        Me.小更新_ch.TabIndex = 683
103
+        Me.小更新_ch.Text = "小更新"
104
+        Me.小更新_ch.UseVisualStyleBackColor = True
105
+        '
106
+        'CheckBox11
107
+        '
108
+        Me.CheckBox11.AutoSize = True
109
+        Me.CheckBox11.Enabled = False
110
+        Me.CheckBox11.Location = New System.Drawing.Point(509, 32)
111
+        Me.CheckBox11.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
112
+        Me.CheckBox11.Name = "CheckBox11"
113
+        Me.CheckBox11.Size = New System.Drawing.Size(51, 24)
114
+        Me.CheckBox11.TabIndex = 682
115
+        Me.CheckBox11.Text = "OK"
116
+        Me.CheckBox11.UseVisualStyleBackColor = True
117
+        '
118
+        'CheckBox10
119
+        '
120
+        Me.CheckBox10.AutoSize = True
121
+        Me.CheckBox10.Enabled = False
122
+        Me.CheckBox10.Location = New System.Drawing.Point(451, 32)
123
+        Me.CheckBox10.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
124
+        Me.CheckBox10.Name = "CheckBox10"
125
+        Me.CheckBox10.Size = New System.Drawing.Size(55, 24)
126
+        Me.CheckBox10.TabIndex = 681
127
+        Me.CheckBox10.Text = "T10"
128
+        Me.CheckBox10.UseVisualStyleBackColor = True
129
+        '
130
+        'CheckBox9
131
+        '
132
+        Me.CheckBox9.AutoSize = True
133
+        Me.CheckBox9.Enabled = False
134
+        Me.CheckBox9.Location = New System.Drawing.Point(402, 32)
135
+        Me.CheckBox9.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
136
+        Me.CheckBox9.Name = "CheckBox9"
137
+        Me.CheckBox9.Size = New System.Drawing.Size(46, 24)
138
+        Me.CheckBox9.TabIndex = 680
139
+        Me.CheckBox9.Text = "T9"
140
+        Me.CheckBox9.UseVisualStyleBackColor = True
141
+        '
142
+        'CheckBox8
143
+        '
144
+        Me.CheckBox8.AutoSize = True
145
+        Me.CheckBox8.Enabled = False
146
+        Me.CheckBox8.Location = New System.Drawing.Point(353, 32)
147
+        Me.CheckBox8.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
148
+        Me.CheckBox8.Name = "CheckBox8"
149
+        Me.CheckBox8.Size = New System.Drawing.Size(46, 24)
150
+        Me.CheckBox8.TabIndex = 679
151
+        Me.CheckBox8.Text = "T8"
152
+        Me.CheckBox8.UseVisualStyleBackColor = True
153
+        '
154
+        'CheckBox7
155
+        '
156
+        Me.CheckBox7.AutoSize = True
157
+        Me.CheckBox7.Enabled = False
158
+        Me.CheckBox7.Location = New System.Drawing.Point(304, 32)
159
+        Me.CheckBox7.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
160
+        Me.CheckBox7.Name = "CheckBox7"
161
+        Me.CheckBox7.Size = New System.Drawing.Size(46, 24)
162
+        Me.CheckBox7.TabIndex = 678
163
+        Me.CheckBox7.Text = "T7"
164
+        Me.CheckBox7.UseVisualStyleBackColor = True
165
+        '
166
+        '驗證存在1
167
+        '
168
+        Me.驗證存在1.Interval = 300
169
+        '
170
+        '刪除在下載
171
+        '
172
+        Me.刪除在下載.Interval = 300
173
+        '
174
+        '主程式更新
175
+        '
176
+        Me.主程式更新.Interval = 300
177
+        '
178
+        'CheckBox6
179
+        '
180
+        Me.CheckBox6.AutoSize = True
181
+        Me.CheckBox6.Enabled = False
182
+        Me.CheckBox6.Location = New System.Drawing.Point(255, 32)
183
+        Me.CheckBox6.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
184
+        Me.CheckBox6.Name = "CheckBox6"
185
+        Me.CheckBox6.Size = New System.Drawing.Size(46, 24)
186
+        Me.CheckBox6.TabIndex = 677
187
+        Me.CheckBox6.Text = "T6"
188
+        Me.CheckBox6.UseVisualStyleBackColor = True
189
+        '
190
+        'CheckBox5
191
+        '
192
+        Me.CheckBox5.AutoSize = True
193
+        Me.CheckBox5.Enabled = False
194
+        Me.CheckBox5.Location = New System.Drawing.Point(206, 32)
195
+        Me.CheckBox5.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
196
+        Me.CheckBox5.Name = "CheckBox5"
197
+        Me.CheckBox5.Size = New System.Drawing.Size(46, 24)
198
+        Me.CheckBox5.TabIndex = 676
199
+        Me.CheckBox5.Text = "T5"
200
+        Me.CheckBox5.UseVisualStyleBackColor = True
201
+        '
202
+        'CheckBox4
203
+        '
204
+        Me.CheckBox4.AutoSize = True
205
+        Me.CheckBox4.Enabled = False
206
+        Me.CheckBox4.Location = New System.Drawing.Point(157, 32)
207
+        Me.CheckBox4.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
208
+        Me.CheckBox4.Name = "CheckBox4"
209
+        Me.CheckBox4.Size = New System.Drawing.Size(46, 24)
210
+        Me.CheckBox4.TabIndex = 675
211
+        Me.CheckBox4.Text = "T4"
212
+        Me.CheckBox4.UseVisualStyleBackColor = True
213
+        '
214
+        'CheckBox2
215
+        '
216
+        Me.CheckBox2.AutoSize = True
217
+        Me.CheckBox2.Enabled = False
218
+        Me.CheckBox2.Location = New System.Drawing.Point(59, 32)
219
+        Me.CheckBox2.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
220
+        Me.CheckBox2.Name = "CheckBox2"
221
+        Me.CheckBox2.Size = New System.Drawing.Size(46, 24)
222
+        Me.CheckBox2.TabIndex = 673
223
+        Me.CheckBox2.Text = "T2"
224
+        Me.CheckBox2.UseVisualStyleBackColor = True
225
+        '
226
+        'ProgressBar1
227
+        '
228
+        Me.ProgressBar1.Location = New System.Drawing.Point(0, 0)
229
+        Me.ProgressBar1.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
230
+        Me.ProgressBar1.Maximum = 10000
231
+        Me.ProgressBar1.Name = "ProgressBar1"
232
+        Me.ProgressBar1.Size = New System.Drawing.Size(567, 27)
233
+        Me.ProgressBar1.TabIndex = 671
234
+        '
235
+        '驗證存在3
236
+        '
237
+        Me.驗證存在3.Interval = 300
238
+        '
239
+        'CheckBox3
240
+        '
241
+        Me.CheckBox3.AutoSize = True
242
+        Me.CheckBox3.Enabled = False
243
+        Me.CheckBox3.Location = New System.Drawing.Point(108, 32)
244
+        Me.CheckBox3.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
245
+        Me.CheckBox3.Name = "CheckBox3"
246
+        Me.CheckBox3.Size = New System.Drawing.Size(46, 24)
247
+        Me.CheckBox3.TabIndex = 674
248
+        Me.CheckBox3.Text = "T3"
249
+        Me.CheckBox3.UseVisualStyleBackColor = True
250
+        '
251
+        'CheckBox1
252
+        '
253
+        Me.CheckBox1.AutoSize = True
254
+        Me.CheckBox1.Enabled = False
255
+        Me.CheckBox1.Location = New System.Drawing.Point(10, 32)
256
+        Me.CheckBox1.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
257
+        Me.CheckBox1.Name = "CheckBox1"
258
+        Me.CheckBox1.Size = New System.Drawing.Size(46, 24)
259
+        Me.CheckBox1.TabIndex = 672
260
+        Me.CheckBox1.Text = "T1"
261
+        Me.CheckBox1.UseVisualStyleBackColor = True
262
+        '
263
+        '伺服器區域_cb
264
+        '
265
+        Me.伺服器區域_cb.Font = New System.Drawing.Font("微軟正黑體", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte))
266
+        Me.伺服器區域_cb.ForeColor = System.Drawing.Color.Blue
267
+        Me.伺服器區域_cb.FormattingEnabled = True
268
+        Me.伺服器區域_cb.Items.AddRange(New Object() {"印尼外網", "測試雲端", "公司雲端"})
269
+        Me.伺服器區域_cb.Location = New System.Drawing.Point(300, 68)
270
+        Me.伺服器區域_cb.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
271
+        Me.伺服器區域_cb.Name = "伺服器區域_cb"
272
+        Me.伺服器區域_cb.Size = New System.Drawing.Size(266, 24)
273
+        Me.伺服器區域_cb.TabIndex = 670
274
+        '
275
+        'ftp清單_dgv
276
+        '
277
+        Me.ftp清單_dgv.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize
278
+        Me.ftp清單_dgv.Location = New System.Drawing.Point(300, 102)
279
+        Me.ftp清單_dgv.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
280
+        Me.ftp清單_dgv.Name = "ftp清單_dgv"
281
+        Me.ftp清單_dgv.RowHeadersWidth = 5
282
+        Me.ftp清單_dgv.RowTemplate.Height = 24
283
+        Me.ftp清單_dgv.Size = New System.Drawing.Size(266, 118)
284
+        Me.ftp清單_dgv.TabIndex = 669
285
+        '
286
+        '驗證存在6
287
+        '
288
+        Me.驗證存在6.Interval = 300
289
+        '
290
+        '驗證存在7
291
+        '
292
+        Me.驗證存在7.Interval = 300
293
+        '
294
+        '刪除所有檔案
295
+        '
296
+        Me.刪除所有檔案.Interval = 300
297
+        '
298
+        'OK
299
+        '
300
+        Me.OK.Interval = 600
301
+        '
302
+        'HX_CL
303
+        '
304
+        Me.HX_CL.Interval = 300
305
+        '
306
+        '中更新
307
+        '
308
+        Me.中更新.Interval = 300
309
+        '
310
+        '小更新
311
+        '
312
+        Me.小更新.Interval = 300
313
+        '
314
+        '驗證存在5
315
+        '
316
+        Me.驗證存在5.Interval = 300
317
+        '
318
+        '大更新
319
+        '
320
+        Me.大更新.Interval = 300
321
+        '
322
+        'OW_UPDATE
323
+        '
324
+        Me.AutoScaleDimensions = New System.Drawing.SizeF(10.0!, 20.0!)
325
+        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
326
+        Me.ClientSize = New System.Drawing.Size(567, 63)
327
+        Me.Controls.Add(Me.大更新_ch)
328
+        Me.Controls.Add(Me.中更新_ch)
329
+        Me.Controls.Add(Me.小更新_ch)
330
+        Me.Controls.Add(Me.CheckBox11)
331
+        Me.Controls.Add(Me.CheckBox10)
332
+        Me.Controls.Add(Me.CheckBox9)
333
+        Me.Controls.Add(Me.CheckBox8)
334
+        Me.Controls.Add(Me.CheckBox7)
335
+        Me.Controls.Add(Me.CheckBox6)
336
+        Me.Controls.Add(Me.CheckBox5)
337
+        Me.Controls.Add(Me.CheckBox4)
338
+        Me.Controls.Add(Me.CheckBox2)
339
+        Me.Controls.Add(Me.ProgressBar1)
340
+        Me.Controls.Add(Me.CheckBox3)
341
+        Me.Controls.Add(Me.CheckBox1)
342
+        Me.Controls.Add(Me.伺服器區域_cb)
343
+        Me.Controls.Add(Me.ftp清單_dgv)
344
+        Me.Font = New System.Drawing.Font("微軟正黑體", 12.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(136, Byte))
345
+        Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
346
+        Me.Margin = New System.Windows.Forms.Padding(6, 5, 6, 5)
347
+        Me.MaximizeBox = False
348
+        Me.MinimizeBox = False
349
+        Me.Name = "OW_UPDATE"
350
+        Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
351
+        Me.Text = "OW_UPDATE"
352
+        CType(Me.ftp清單_dgv, System.ComponentModel.ISupportInitialize).EndInit()
353
+        Me.ResumeLayout(False)
354
+        Me.PerformLayout()
355
+
356
+    End Sub
357
+
358
+    Friend WithEvents 驗證存在4 As Timer
359
+    Friend WithEvents 驗證存在2 As Timer
360
+    Friend WithEvents 大更新_ch As CheckBox
361
+    Friend WithEvents 中更新_ch As CheckBox
362
+    Friend WithEvents 小更新_ch As CheckBox
363
+    Friend WithEvents CheckBox11 As CheckBox
364
+    Friend WithEvents CheckBox10 As CheckBox
365
+    Friend WithEvents CheckBox9 As CheckBox
366
+    Friend WithEvents CheckBox8 As CheckBox
367
+    Friend WithEvents CheckBox7 As CheckBox
368
+    Friend WithEvents 驗證存在1 As Timer
369
+    Friend WithEvents 刪除在下載 As Timer
370
+    Friend WithEvents 主程式更新 As Timer
371
+    Friend WithEvents CheckBox6 As CheckBox
372
+    Friend WithEvents CheckBox5 As CheckBox
373
+    Friend WithEvents CheckBox4 As CheckBox
374
+    Friend WithEvents CheckBox2 As CheckBox
375
+    Friend WithEvents ProgressBar1 As ProgressBar
376
+    Friend WithEvents 驗證存在3 As Timer
377
+    Friend WithEvents CheckBox3 As CheckBox
378
+    Friend WithEvents CheckBox1 As CheckBox
379
+    Friend WithEvents 伺服器區域_cb As ComboBox
380
+    Friend WithEvents ftp清單_dgv As DataGridView
381
+    Friend WithEvents 驗證存在6 As Timer
382
+    Friend WithEvents 驗證存在7 As Timer
383
+    Friend WithEvents 刪除所有檔案 As Timer
384
+    Friend WithEvents OK As Timer
385
+    Friend WithEvents HX_CL As Timer
386
+    Friend WithEvents 中更新 As Timer
387
+    Friend WithEvents 小更新 As Timer
388
+    Friend WithEvents 驗證存在5 As Timer
389
+    Friend WithEvents 大更新 As Timer
390
+End Class

+ 1574
- 0
OW-UPDATE/OW-UPDATE.resx
File diff suppressed because it is too large
Näytä tiedosto


+ 392
- 0
OW-UPDATE/OW-UPDATE.vb Näytä tiedosto

1
+Imports System.IO
2
+Imports System.Net
3
+Imports System.Text
4
+Imports System.Net.NetworkInformation
5
+Public Class OW_UPDATE
6
+    ReadOnly ds2 As New DataSet
7
+    ReadOnly computerProperties As IPGlobalProperties = IPGlobalProperties.GetIPGlobalProperties()
8
+    ReadOnly IPEndPoint() As EndPoint = computerProperties.GetActiveTcpListeners()
9
+    Dim myIPEndPoint As IPEndPoint
10
+    Dim 內網線路, 開發線路, 刪除完成, OK1, OK2, OK3, OK4, OK5, OK6, OK7, OK8, OK9, OK10 As Boolean
11
+    Dim Str As String = Application.StartupPath
12
+    Dim TF As String
13
+    Private Sub OW_UPDATE_Load(sender As Object, e As EventArgs) Handles MyBase.Load
14
+        Dim strDirName As String : Dim Strs As String = Application.StartupPath
15
+        If File.Exists(Strs & "\OPUPDATE.txt") Then
16
+            File.Delete(Strs & "\OPUPDATE.txt") : End If
17
+        strDirName = Strs & "\OPUPDATE.txt"
18
+        Try
19
+            Using fs As IO.FileStream = New IO.FileStream(strDirName, FileMode.Append)
20
+                Using sw As StreamWriter = New StreamWriter(fs, Encoding.Default)
21
+                    Dim str1 As String = "..."
22
+                    sw.WriteLine(str1)   '插入一整行
23
+                    sw.Flush()
24
+                End Using
25
+            End Using
26
+        Catch ex As Exception
27
+        End Try
28
+        '----------判斷是否有更新指定檔案-------------------------------------------------------------------------------------
29
+        If File.Exists(Strs & "\OWUPDATE.txt") Then : Else
30
+            strDirName = Strs & "\OWUPDATE.txt"
31
+            Try
32
+                Using fs As IO.FileStream = New IO.FileStream(strDirName, FileMode.Append)
33
+                    Using sw As StreamWriter = New StreamWriter(fs, Encoding.Default)
34
+                        Dim strk As String = "1"
35
+                        sw.WriteLine(strk)   '插入一整行
36
+                        sw.Flush()
37
+                    End Using
38
+                End Using
39
+            Catch ex As Exception
40
+            End Try
41
+        End If
42
+
43
+        Target = "https://gcm-smart.com/ERP/OW-ERP/"
44
+        Me.Text = "UPDATE " & TF
45
+
46
+        '----------讀取更新指定檔案-------------------------------------------------------------------------------------
47
+        Dim Str As String = Application.StartupPath
48
+        If File.Exists(Str + "\OWUPDATE.txt") Then
49
+            Dim filereader = My.Computer.FileSystem.OpenTextFileReader(Str + "\OWUPDATE.txt", System.Text.Encoding.Default)
50
+            Dim Text As String = "" : Dim line As String = filereader.ReadLine()
51
+            While Not (line Is Nothing) : Text = Text & line & vbCrLf : line = filereader.ReadLine() : End While : filereader.Close()
52
+            If Strings.Left(Text, 1) = "1" Then
53
+                小更新_ch.Checked = True : 中更新_ch.Checked = False : 大更新_ch.Checked = False : 資料數 = 4
54
+            ElseIf Strings.Left(Text, 1) = "2" Then
55
+                小更新_ch.Checked = False : 中更新_ch.Checked = True : 大更新_ch.Checked = False : 資料數 = 70
56
+            ElseIf Strings.Left(Text, 1) = "3" Then
57
+                小更新_ch.Checked = False : 中更新_ch.Checked = False : 大更新_ch.Checked = True : 資料數 = 226
58
+            End If
59
+        End If
60
+    End Sub
61
+    Private Sub OW_UPDATE_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
62
+        If 小更新_ch.Checked = True Then
63
+            刪除完成 = True : 小更新.Enabled = True
64
+        ElseIf 中更新_ch.Checked = True Then
65
+            刪除完成 = True : 中更新.Enabled = True
66
+        ElseIf 大更新_ch.Checked = True Then
67
+            刪除所有檔案.Enabled = True : 大更新.Enabled = True
68
+        End If
69
+        '--- 開啟專案---------------------------------------------------------------------------------------------------------------------------
70
+        OK.Enabled = True
71
+    End Sub
72
+    Private Sub 小更新_Tick(sender As Object, e As EventArgs) Handles 小更新.Tick
73
+        If 刪除完成 = True Then
74
+            小更新.Enabled = False
75
+            主程式更新.Enabled = True : OK2 = True : OK3 = True : OK4 = True : OK5 = True : OK6 = True : OK7 = True : OK8 = True : OK9 = True : OK10 = True
76
+        End If
77
+    End Sub
78
+    Private Sub 中更新_Tick(sender As Object, e As EventArgs) Handles 中更新.Tick
79
+        If 刪除完成 = True Then
80
+            中更新.Enabled = False
81
+            '--- 刪除在下載---------------------------------------------------------------------------------------------------------------------------
82
+            主程式更新.Enabled = True : 刪除在下載.Enabled = True
83
+            '--- 比對下載---------------------------------------------------------------------------------------------------------------------------
84
+            驗證存在1.Enabled = True : 驗證存在2.Enabled = True : 驗證存在3.Enabled = True : 驗證存在4.Enabled = True : 驗證存在5.Enabled = True
85
+            驗證存在6.Enabled = True : 驗證存在7.Enabled = True : OK10 = True
86
+        End If
87
+    End Sub
88
+    Private Sub 大更新_Tick(sender As Object, e As EventArgs) Handles 大更新.Tick
89
+        If 刪除完成 = True Then
90
+            大更新.Enabled = False
91
+            '--- 刪除在下載---------------------------------------------------------------------------------------------------------------------------
92
+            主程式更新.Enabled = True : 刪除在下載.Enabled = True
93
+            '--- 比對下載---------------------------------------------------------------------------------------------------------------------------
94
+            驗證存在1.Enabled = True : 驗證存在2.Enabled = True : 驗證存在3.Enabled = True : 驗證存在4.Enabled = True : 驗證存在5.Enabled = True
95
+            驗證存在6.Enabled = True : 驗證存在7.Enabled = True
96
+        End If
97
+    End Sub
98
+
99
+    Private Sub HX_CL_Tick(sender As Object, e As EventArgs) Handles HX_CL.Tick
100
+    End Sub
101
+
102
+    Public Sub Delay(ByRef Interval As Double)  'Interval单位为毫秒
103
+        Dim time As DateTime = DateTime.Now
104
+        Dim Span As Double = Interval * 1234
105
+        While ((DateTime.Now.Ticks - time.Ticks) < Span)
106
+            Application.DoEvents()
107
+        End While
108
+    End Sub
109
+    Private Sub OK_Tick(sender As Object, e As EventArgs) Handles OK.Tick
110
+        If OK1 = True And OK2 = True And OK3 = True And OK4 = True And OK5 = True And OK6 = True And OK7 = True And OK8 = True And OK9 = True And OK10 = True Then
111
+            OK.Enabled = False : CheckBox11.Checked = True : Dim FS1 As String
112
+            FS1 = "OWUPDATE.txt" : If File.Exists(Str & "\" & FS1) Then : File.Delete(Str & "\" & FS1) : End If
113
+            Shell(Str + "\OW-ERP-SYS.exe", vbNormalFocus) : Me.Close()
114
+        End If
115
+    End Sub
116
+    Private Sub 主程式更新_Tick(sender As Object, e As EventArgs) Handles 主程式更新.Tick
117
+        Dim 已開啟 As Boolean = False : Dim FS1 As String
118
+        Dim Strs As String = Application.StartupPath
119
+
120
+        MyModule1.進度條()
121
+        FS1 = "LANGUAGE_FILE.csv"
122
+        If File.Exists(Str & "\" & FS1) Then
123
+            File.Delete(Str & "\" & FS1)
124
+        End If
125
+        My.Computer.Network.DownloadFile(Target & FS1, Str & "\" & FS1)
126
+        Me.Text = "UPDATE " & TF & FS1
127
+
128
+        FS1 = "OW-ERP-SYS.exe"
129
+        If File.Exists(My.Computer.FileSystem.SpecialDirectories.Desktop & "\" & FS1) Then
130
+            Dim pro() As Process = System.Diagnostics.Process.GetProcesses()
131
+            ' 判斷是否有符合的Process
132
+            For Each process As Process In pro
133
+                If ("OW-ERP-SYS").Equals(process.ProcessName) Then
134
+                    已開啟 = True
135
+                End If
136
+            Next
137
+            If 已開啟 = False Then
138
+                主程式更新.Enabled = False
139
+                MyModule1.進度條() : If File.Exists(Str & "\" & FS1) Then : File.Delete(Str & "\" & FS1) : End If
140
+                My.Computer.Network.DownloadFile(Target & FS1, Str & "\" & FS1)
141
+                OK1 = True : CheckBox1.Checked = True
142
+            End If
143
+        ElseIf File.Exists(Strs & "\" & FS1) Then
144
+            Dim pro() As Process = System.Diagnostics.Process.GetProcesses()
145
+            ' 判斷是否有符合的Process
146
+            For Each process As Process In pro
147
+                If ("OW-ERP-SYS").Equals(process.ProcessName) Then
148
+                    已開啟 = True
149
+                End If
150
+            Next
151
+            If 已開啟 = False Then
152
+                主程式更新.Enabled = False
153
+                MyModule1.進度條() : If File.Exists(Str & "\" & FS1) Then : File.Delete(Str & "\" & FS1) : End If
154
+                My.Computer.Network.DownloadFile(Target & FS1, Str & "\" & FS1)
155
+                OK1 = True : CheckBox1.Checked = True
156
+            End If
157
+        End If
158
+    End Sub
159
+    Private Sub 刪除在下載_Tick(sender As Object, e As EventArgs) Handles 刪除在下載.Tick
160
+        刪除在下載.Enabled = False : Dim FS2 As String
161
+        OK2 = True : CheckBox2.Checked = True
162
+    End Sub
163
+    Private Sub Timer3_Tick(sender As Object, e As EventArgs) Handles 驗證存在1.Tick        '10
164
+        驗證存在1.Enabled = False
165
+        Dim FS3 As String
166
+        MyModule1.進度條() : If Dir(Str + "\Theme", vbDirectory) <> "" Then : Else : MkDir(Str + "\Theme") : End If
167
+        OK3 = True : CheckBox3.Checked = True
168
+    End Sub
169
+    Private Sub Timer4_Tick(sender As Object, e As EventArgs) Handles 驗證存在2.Tick        '10
170
+        驗證存在2.Enabled = False
171
+        Dim FS4 As String
172
+        FS4 = "OW-ERP-SYS.pdb" : MyModule1.進度條() : If File.Exists(Str & "\" & FS4) Then : Else
173
+            Me.Text = "UPDATE " & TF & FS4 : My.Computer.Network.DownloadFile(Target & FS4, Str & "\" & FS4) : End If
174
+        FS4 = "OW-ERP-SYS.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS4) Then : Else
175
+            Me.Text = "UPDATE " & TF & FS4 : My.Computer.Network.DownloadFile(Target & FS4, Str & "\" & FS4) : End If
176
+        FS4 = "OW-ERP-SYS.exe.config" : MyModule1.進度條() : If File.Exists(Str & "\" & FS4) Then : Else
177
+            Me.Text = "UPDATE " & TF & FS4 : My.Computer.Network.DownloadFile(Target & FS4, Str & "\" & FS4) : End If
178
+        OK4 = True : CheckBox4.Checked = True
179
+    End Sub
180
+    Private Sub Timer5_Tick(sender As Object, e As EventArgs) Handles 驗證存在3.Tick        '10
181
+        驗證存在3.Enabled = False
182
+        Dim FS5 As String
183
+        FS5 = "DotNetBarcode.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS5) Then : Else
184
+            Me.Text = "UPDATE " & TF & FS5 : My.Computer.Network.DownloadFile(Target & FS5, Str & "\" & FS5) : End If
185
+        OK5 = True : CheckBox5.Checked = True
186
+    End Sub
187
+    Private Sub Timer6_Tick(sender As Object, e As EventArgs) Handles 驗證存在4.Tick        '10
188
+        驗證存在4.Enabled = False
189
+
190
+        OK6 = True : CheckBox6.Checked = True
191
+    End Sub
192
+    Private Sub Timer7_Tick(sender As Object, e As EventArgs) Handles 驗證存在5.Tick        '10
193
+        驗證存在5.Enabled = False
194
+
195
+        OK7 = True : CheckBox7.Checked = True
196
+    End Sub
197
+    Private Sub Timer8_Tick(sender As Object, e As EventArgs) Handles 驗證存在6.Tick        '10
198
+        驗證存在6.Enabled = False
199
+        OK8 = True : CheckBox8.Checked = True
200
+    End Sub
201
+    Private Sub Timer9_Tick(sender As Object, e As EventArgs) Handles 驗證存在7.Tick        '3
202
+        驗證存在7.Enabled = False
203
+        OK9 = True : CheckBox9.Checked = True
204
+    End Sub
205
+    Private Sub 刪除所有檔案_Tick(sender As Object, e As EventArgs) Handles 刪除所有檔案.Tick
206
+        刪除所有檔案.Enabled = False : Dim FS10 As String
207
+        FS10 = "excel_chinese.xml" : MyModule1.進度條() : If File.Exists(Str & "\Theme\" & FS10) Then : File.Delete(Str & "\Theme\" & FS10) : End If
208
+        FS10 = "excel_english.xml" : MyModule1.進度條() : If File.Exists(Str & "\Theme\" & FS10) Then : File.Delete(Str & "\Theme\" & FS10) : End If
209
+        FS10 = "word_chinese.xml" : MyModule1.進度條() : If File.Exists(Str & "\Theme\" & FS10) Then : File.Delete(Str & "\Theme\" & FS10) : End If
210
+        FS10 = "word_english.xml" : MyModule1.進度條() : If File.Exists(Str & "\Theme\" & FS10) Then : File.Delete(Str & "\Theme\" & FS10) : End If
211
+
212
+        FS10 = "OW-ERP-SYS.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
213
+        FS10 = "OW-ERP-SYS.exe.config" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
214
+        FS10 = "OW-ERP-SYS.pdb" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
215
+
216
+        FS10 = "Telerik.Documents.SpreadsheetStreaming.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
217
+        FS10 = "Telerik.Documents.SpreadsheetStreaming.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
218
+        FS10 = "Telerik.WinControls.RadSpreadsheet.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
219
+        FS10 = "Telerik.WinControls.RadSpreadsheet.dll.config" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
220
+        FS10 = "Telerik.WinControls.RadSpreadsheet.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
221
+        FS10 = "Telerik.WinControls.RadDiagram.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
222
+        FS10 = "Telerik.WinControls.RadDiagram.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
223
+        FS10 = "Telerik.WinControls.RadDock.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
224
+        FS10 = "Telerik.WinControls.RadDock.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
225
+        FS10 = "Telerik.WinControls.RadMarkupEditor.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
226
+        FS10 = "Telerik.WinControls.RadMarkupEditor.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
227
+        FS10 = "Telerik.WinControls.SyntaxEditor.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
228
+        FS10 = "Telerik.WinControls.SyntaxEditor.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
229
+        FS10 = "Telerik.WinControls.UI.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
230
+        FS10 = "Telerik.WinControls.UI.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
231
+        FS10 = "Telerik.WinControls.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
232
+        FS10 = "Telerik.WinControls.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
233
+        FS10 = "Telerik.WinControls.PdfViewer.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
234
+        FS10 = "Telerik.WinControls.PdfViewer.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
235
+        FS10 = "Telerik.WinControls.RichTextEditor.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
236
+        FS10 = "Telerik.WinControls.RichTextEditor.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
237
+        FS10 = "Telerik.WinControls.ChartView.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
238
+        FS10 = "Telerik.WinControls.ChartView.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
239
+        FS10 = "Telerik.WinControls.GridView.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
240
+        FS10 = "Telerik.WinControls.GridView.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
241
+        FS10 = "Telerik.WinControls.RadMap.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
242
+        FS10 = "Telerik.WinControls.RadMap.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
243
+        FS10 = "Telerik.WinControls.RadToastNotification.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
244
+        FS10 = "Telerik.WinControls.RadToastNotification.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
245
+        FS10 = "Telerik.WinControls.RadWebCam.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
246
+        FS10 = "Telerik.WinControls.RadWebCam.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
247
+        FS10 = "Telerik.Windows.Documents.Core.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
248
+        FS10 = "Telerik.Windows.Documents.Core.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
249
+        FS10 = "Telerik.Windows.Documents.Fixed.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
250
+        FS10 = "Telerik.Windows.Documents.Fixed.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
251
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
252
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
253
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
254
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
255
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
256
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.FormatProviders.Xls.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
257
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.FormatProviders.Xls.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
258
+        FS10 = "Telerik.Windows.Documents.Spreadsheet.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
259
+        FS10 = "Telerik.Windows.MediaFoundation.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
260
+        FS10 = "Telerik.Windows.Zip.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
261
+        FS10 = "Telerik.Windows.Zip.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
262
+        FS10 = "TelerikCommon.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
263
+        FS10 = "TelerikData.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
264
+        FS10 = "TelerikData.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
265
+        FS10 = "TelerikExport.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
266
+        FS10 = "TelerikExport.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
267
+        FS10 = "TelerikMetro_Chinese.tssp" : MyModule1.進度條() : If File.Exists(Str & "\Theme\" & FS10) Then : File.Delete(Str & "\Theme\" & FS10) : End If
268
+
269
+        FS10 = "DotNetBarcode.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
270
+        FS10 = "IdentityModel.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
271
+        FS10 = "IdentityModel.pdb" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
272
+        FS10 = "IdentityModel.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
273
+        FS10 = "MediaFoundation.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
274
+        FS10 = "Microsoft.Toolkit.Uwp.Notifications.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
275
+        FS10 = "Newtonsoft.Json.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
276
+        FS10 = "Newtonsoft.Json.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
277
+        FS10 = "PInvoke.Windows.Core.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
278
+        FS10 = "PInvoke.Windows.Core.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
279
+        FS10 = "SuperDataGrid.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
280
+
281
+        FS10 = "System.Buffers.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
282
+        FS10 = "System.Buffers.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
283
+        FS10 = "System.Memory.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
284
+        FS10 = "System.Memory.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
285
+        FS10 = "System.Numerics.Vectors.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
286
+        FS10 = "System.Numerics.Vectors.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
287
+        FS10 = "System.Runtime.CompilerServices.Unsafe.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
288
+        FS10 = "System.Runtime.CompilerServices.Unsafe.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
289
+        FS10 = "System.Text.Encodings.Web.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
290
+        FS10 = "System.Text.Encodings.Web.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
291
+        FS10 = "System.Linq.Queryable.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
292
+        FS10 = "System.Linq.Parallel.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
293
+        FS10 = "System.Linq.Expressions.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
294
+        FS10 = "System.Linq.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
295
+        FS10 = "System.IO.UnmanagedMemoryStream.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
296
+        FS10 = "System.IO.Pipes.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
297
+        FS10 = "System.IO.MemoryMappedFiles.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
298
+        FS10 = "System.IO.IsolatedStorage.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
299
+        FS10 = "System.IO.FileSystem.Watcher.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
300
+        FS10 = "System.IO.FileSystem.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
301
+        FS10 = "System.IO.FileSystem.DriveInfo.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
302
+        FS10 = "System.IO.FileSystem.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
303
+        FS10 = "System.IO.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
304
+        FS10 = "System.IO.Compression.ZipFile.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
305
+        FS10 = "System.IO.Compression.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
306
+        FS10 = "System.Globalization.Extensions.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
307
+        FS10 = "System.Globalization.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
308
+        FS10 = "System.Globalization.Calendars.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
309
+        FS10 = "System.Dynamic.Runtime.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
310
+        FS10 = "System.Drawing.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
311
+        FS10 = "System.Diagnostics.Tracing.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
312
+        FS10 = "System.Diagnostics.TraceSource.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
313
+        FS10 = "System.Diagnostics.Tools.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
314
+        FS10 = "System.Diagnostics.TextWriterTraceListener.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
315
+        FS10 = "Microsoft.Win32.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
316
+        FS10 = "netstandard.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
317
+        FS10 = "System.AppContext.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
318
+        FS10 = "System.Collections.Concurrent.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
319
+        FS10 = "System.Collections.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
320
+        FS10 = "System.Collections.NonGeneric.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
321
+        FS10 = "System.Collections.Specialized.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
322
+        FS10 = "System.ComponentModel.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
323
+        FS10 = "System.ComponentModel.EventBasedAsync.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
324
+        FS10 = "System.ComponentModel.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
325
+        FS10 = "System.ComponentModel.TypeConverter.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
326
+        FS10 = "System.Console.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
327
+        FS10 = "System.Data.Common.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
328
+        FS10 = "System.Diagnostics.Contracts.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
329
+        FS10 = "System.Diagnostics.Debug.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
330
+        FS10 = "System.Diagnostics.FileVersionInfo.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
331
+        FS10 = "System.Diagnostics.Process.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
332
+        FS10 = "System.Diagnostics.StackTrace.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
333
+        FS10 = "System.Net.Http.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
334
+        FS10 = "System.Net.NameResolution.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
335
+        FS10 = "System.Net.NetworkInformation.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
336
+        FS10 = "System.Net.Ping.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
337
+        FS10 = "System.Net.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
338
+        FS10 = "System.Net.Requests.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
339
+        FS10 = "System.Net.Security.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
340
+        FS10 = "System.Net.Sockets.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
341
+        FS10 = "System.Net.WebHeaderCollection.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
342
+        FS10 = "System.Net.WebSockets.Client.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
343
+        FS10 = "System.Net.WebSockets.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
344
+        FS10 = "System.ObjectModel.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
345
+        FS10 = "System.Reflection.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
346
+        FS10 = "System.Reflection.Extensions.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
347
+        FS10 = "System.Reflection.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
348
+        FS10 = "System.Resources.Reader.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
349
+        FS10 = "System.Resources.ResourceManager.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
350
+        FS10 = "System.Resources.Writer.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
351
+        FS10 = "System.Xml.XPath.XDocument.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
352
+        FS10 = "System.Xml.XPath.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
353
+        FS10 = "System.Xml.XmlSerializer.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
354
+        FS10 = "System.Xml.XmlDocument.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
355
+        FS10 = "System.Xml.XDocument.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
356
+        FS10 = "System.Xml.ReaderWriter.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
357
+        FS10 = "System.ValueTuple.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
358
+        FS10 = "System.Threading.Timer.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
359
+        FS10 = "System.Threading.ThreadPool.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
360
+        FS10 = "System.Threading.Thread.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
361
+        FS10 = "System.Threading.Tasks.Parallel.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
362
+        FS10 = "System.Threading.Tasks.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
363
+        FS10 = "System.Threading.Overlapped.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
364
+        FS10 = "System.Threading.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
365
+        FS10 = "System.Text.RegularExpressions.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
366
+        FS10 = "System.Text.Encodings.Web.xml" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
367
+        FS10 = "System.Text.Encodings.Web.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
368
+        FS10 = "System.Text.Encoding.Extensions.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
369
+        FS10 = "System.Text.Encoding.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
370
+        FS10 = "System.Security.SecureString.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
371
+        FS10 = "System.Security.Principal.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
372
+        FS10 = "System.Security.Cryptography.X509Certificates.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
373
+        FS10 = "System.Security.Cryptography.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
374
+        FS10 = "System.Security.Cryptography.Encoding.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
375
+        FS10 = "System.Security.Cryptography.Csp.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
376
+        FS10 = "System.Security.Cryptography.Algorithms.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
377
+        FS10 = "System.Security.Claims.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
378
+        FS10 = "System.Runtime.Serialization.Xml.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
379
+        FS10 = "System.Runtime.Serialization.Primitives.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
380
+        FS10 = "System.Runtime.Serialization.Json.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
381
+        FS10 = "System.Runtime.Serialization.Formatters.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
382
+        FS10 = "System.Runtime.Numerics.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
383
+        FS10 = "System.Runtime.InteropServices.RuntimeInformation.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
384
+        FS10 = "System.Runtime.InteropServices.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
385
+        FS10 = "ystem.Runtime.Handles.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
386
+        FS10 = "System.Runtime.Extensions.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
387
+        FS10 = "System.Runtime.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
388
+        FS10 = "System.Runtime.CompilerServices.VisualC.dll" : MyModule1.進度條() : If File.Exists(Str & "\" & FS10) Then : File.Delete(Str & "\" & FS10) : End If
389
+        OK10 = True : CheckBox10.Checked = True : 刪除完成 = True
390
+    End Sub
391
+
392
+End Class

+ 140
- 0
OW-UPDATE/OW-UPDATE.vbproj Näytä tiedosto

1
+<?xml version="1.0" encoding="utf-8"?>
2
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
4
+  <PropertyGroup>
5
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
6
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
7
+    <ProjectGuid>{ADD3D8F6-C9BA-40B0-9347-482514E260DC}</ProjectGuid>
8
+    <OutputType>WinExe</OutputType>
9
+    <StartupObject>OW_UPDATE.My.MyApplication</StartupObject>
10
+    <RootNamespace>OW_UPDATE</RootNamespace>
11
+    <AssemblyName>OW-UPDATE</AssemblyName>
12
+    <FileAlignment>512</FileAlignment>
13
+    <MyType>WindowsForms</MyType>
14
+    <TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
15
+    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
16
+    <Deterministic>true</Deterministic>
17
+  </PropertyGroup>
18
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
19
+    <PlatformTarget>AnyCPU</PlatformTarget>
20
+    <DebugSymbols>true</DebugSymbols>
21
+    <DebugType>full</DebugType>
22
+    <DefineDebug>true</DefineDebug>
23
+    <DefineTrace>true</DefineTrace>
24
+    <OutputPath>bin\Debug\</OutputPath>
25
+    <DocumentationFile>OW-UPDATE.xml</DocumentationFile>
26
+    <NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
27
+  </PropertyGroup>
28
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
29
+    <PlatformTarget>AnyCPU</PlatformTarget>
30
+    <DebugType>pdbonly</DebugType>
31
+    <DefineDebug>false</DefineDebug>
32
+    <DefineTrace>true</DefineTrace>
33
+    <Optimize>true</Optimize>
34
+    <OutputPath>bin\Release\</OutputPath>
35
+    <DocumentationFile>OW-UPDATE.xml</DocumentationFile>
36
+    <NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
37
+  </PropertyGroup>
38
+  <PropertyGroup>
39
+    <OptionExplicit>On</OptionExplicit>
40
+  </PropertyGroup>
41
+  <PropertyGroup>
42
+    <OptionCompare>Binary</OptionCompare>
43
+  </PropertyGroup>
44
+  <PropertyGroup>
45
+    <OptionStrict>Off</OptionStrict>
46
+  </PropertyGroup>
47
+  <PropertyGroup>
48
+    <OptionInfer>On</OptionInfer>
49
+  </PropertyGroup>
50
+  <PropertyGroup>
51
+    <ApplicationIcon>update_icon.ico</ApplicationIcon>
52
+  </PropertyGroup>
53
+  <PropertyGroup>
54
+    <ApplicationManifest>app.manifest</ApplicationManifest>
55
+  </PropertyGroup>
56
+  <ItemGroup>
57
+    <Reference Include="System" />
58
+    <Reference Include="System.Data" />
59
+    <Reference Include="System.Deployment" />
60
+    <Reference Include="System.Drawing" />
61
+    <Reference Include="System.Windows.Forms" />
62
+    <Reference Include="System.Xml" />
63
+    <Reference Include="System.Core" />
64
+    <Reference Include="System.Xml.Linq" />
65
+    <Reference Include="System.Data.DataSetExtensions" />
66
+    <Reference Include="System.Net.Http" />
67
+  </ItemGroup>
68
+  <ItemGroup>
69
+    <Import Include="Microsoft.VisualBasic" />
70
+    <Import Include="System" />
71
+    <Import Include="System.Collections" />
72
+    <Import Include="System.Collections.Generic" />
73
+    <Import Include="System.Data" />
74
+    <Import Include="System.Drawing" />
75
+    <Import Include="System.Diagnostics" />
76
+    <Import Include="System.Windows.Forms" />
77
+    <Import Include="System.Linq" />
78
+    <Import Include="System.Xml.Linq" />
79
+    <Import Include="System.Threading.Tasks" />
80
+  </ItemGroup>
81
+  <ItemGroup>
82
+    <Compile Include="My Project\AssemblyInfo.vb" />
83
+    <Compile Include="My Project\Application.Designer.vb">
84
+      <AutoGen>True</AutoGen>
85
+      <DependentUpon>Application.myapp</DependentUpon>
86
+      <DesignTime>True</DesignTime>
87
+    </Compile>
88
+    <Compile Include="My Project\Resources.Designer.vb">
89
+      <AutoGen>True</AutoGen>
90
+      <DesignTime>True</DesignTime>
91
+      <DependentUpon>Resources.resx</DependentUpon>
92
+    </Compile>
93
+    <Compile Include="My Project\Settings.Designer.vb">
94
+      <AutoGen>True</AutoGen>
95
+      <DependentUpon>Settings.settings</DependentUpon>
96
+      <DesignTimeSharedInput>True</DesignTimeSharedInput>
97
+    </Compile>
98
+    <Compile Include="OW-UPDATE.Designer.vb">
99
+      <DependentUpon>OW-UPDATE.vb</DependentUpon>
100
+    </Compile>
101
+    <Compile Include="OW-UPDATE.vb">
102
+      <SubType>Form</SubType>
103
+    </Compile>
104
+    <Compile Include="SQL_Module.vb" />
105
+    <Compile Include="SQL_連線狀態模組1.vb" />
106
+    <Compile Include="SQL_連線狀態模組2.vb" />
107
+    <Compile Include="全域變數.vb" />
108
+  </ItemGroup>
109
+  <ItemGroup>
110
+    <EmbeddedResource Include="My Project\Resources.resx">
111
+      <Generator>VbMyResourcesResXFileCodeGenerator</Generator>
112
+      <LastGenOutput>Resources.Designer.vb</LastGenOutput>
113
+      <CustomToolNamespace>My.Resources</CustomToolNamespace>
114
+      <SubType>Designer</SubType>
115
+    </EmbeddedResource>
116
+    <EmbeddedResource Include="OW-UPDATE.resx">
117
+      <DependentUpon>OW-UPDATE.vb</DependentUpon>
118
+    </EmbeddedResource>
119
+  </ItemGroup>
120
+  <ItemGroup>
121
+    <None Include="app.manifest" />
122
+    <None Include="My Project\Application.myapp">
123
+      <Generator>MyApplicationCodeGenerator</Generator>
124
+      <LastGenOutput>Application.Designer.vb</LastGenOutput>
125
+    </None>
126
+    <None Include="My Project\Settings.settings">
127
+      <Generator>SettingsSingleFileGenerator</Generator>
128
+      <CustomToolNamespace>My</CustomToolNamespace>
129
+      <LastGenOutput>Settings.Designer.vb</LastGenOutput>
130
+    </None>
131
+    <None Include="App.config" />
132
+  </ItemGroup>
133
+  <ItemGroup>
134
+    <Folder Include="圖片\" />
135
+  </ItemGroup>
136
+  <ItemGroup>
137
+    <Content Include="update_icon.ico" />
138
+  </ItemGroup>
139
+  <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
140
+</Project>

+ 20
- 0
OW-UPDATE/SQL_Module.vb Näytä tiedosto

1
+Imports System.Data.SqlClient
2
+Module SQL_Module
3
+    Public ConString As String : Public AccessConString As String : Public SQL1 As String : Public SQL2 As String : Public conn As New SqlConnection : Public cmd As New SqlCommand
4
+    Public dr As SqlDataReader : Public da As New SqlDataAdapter
5
+    Friend Sub ConnOpen()
6
+        conn.Close() : If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
7
+    End Sub
8
+    Friend Sub CmdSet_For_DGV()
9
+        cmd.Connection = conn : cmd.CommandText = SQL1 : da.SelectCommand = cmd
10
+    End Sub
11
+    Friend Sub CmdSet_For_dr()
12
+        cmd.CommandText = SQL1 : cmd.Connection = conn : dr = cmd.ExecuteReader
13
+    End Sub
14
+    Friend Sub SQL_FTP資料夾路徑分配()
15
+        ConnOpen() : SQL1 = "SELECT 資料夾名稱, 指定頁面, 備註, 指定 FROM FTP資料夾管理 ORDER BY 指定" : CmdSet_For_DGV()
16
+    End Sub
17
+    Friend Sub SQL_FTP伺服器登入位置()
18
+        ConnOpen() : SQL1 = "SELECT  FTP地址, FTP帳號, FTP密碼, FTP物理位置 FROM FTP資料庫管理 WHERE 地區 LIKE N'" & OW_UPDATE.伺服器區域_cb.Text & "'" : CmdSet_For_dr()
19
+    End Sub
20
+End Module

+ 68
- 0
OW-UPDATE/SQL_連線狀態模組1.vb Näytä tiedosto

1
+Module SQL_連線狀態模組1
2
+#Region "——连接测试:避免等待时间过长——"
3
+    Dim bConnect As Boolean
4
+    Dim BgWorker1 As New System.ComponentModel.BackgroundWorker
5
+    Dim ServerIP As String
6
+    ''' <summary>
7
+    ''' 测试连接:True-连接成功,False-连接失败
8
+    ''' 参数[必选]:服务器IP
9
+    ''' 参数[可选]:等待超时时间(秒),默认为1.2秒
10
+    ''' </summary>
11
+    ''' <returns></returns>
12
+    ''' <remarks></remarks>
13
+    Function ConnectTest1(ByVal varServerIP As String, Optional ByVal varTimeout As Decimal = 1.5) As Boolean
14
+        AddHandler BgWorker1.DoWork, AddressOf BgWorker1_DoWork
15
+        Dim g As Integer
16
+        Dim k As Integer
17
+        If BgWorker1.CancellationPending Then
18
+            BgWorker1.CancelAsync()
19
+            '取消BackgroundWorker執行中的工作
20
+        End If
21
+        Try
22
+            If varServerIP = "" Then
23
+                Exit Function
24
+            End If
25
+            ServerIP = varServerIP
26
+            If varTimeout <= 0 Then
27
+                varTimeout = 1.5
28
+            End If
29
+            k = Int(varTimeout * 10)
30
+            bConnect = False
31
+            BgWorker1.WorkerSupportsCancellation = True
32
+            BgWorker1.RunWorkerAsync()
33
+            For g = 1 To k '1.2s
34
+                Threading.Thread.Sleep(100)
35
+                If bConnect = True Then
36
+                    ConnectTest1 = True
37
+                    Exit Function
38
+                End If
39
+            Next
40
+            ConnectTest1 = False
41
+            BgWorker1.CancelAsync()
42
+        Catch ex As Exception
43
+            MsgBox(ex.Message)
44
+        End Try
45
+#Disable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
46
+    End Function
47
+#Enable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
48
+    '--异步动作
49
+    Private Sub BgWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
50
+        Call ConnectMSSQLServer()
51
+    End Sub
52
+    '--连接数据库
53
+    Private Function ConnectMSSQLServer() As Boolean
54
+        Dim sqlConTest As Data.SqlClient.SqlConnection ' 连接   
55
+        sqlConTest = New Data.SqlClient.SqlConnection
56
+        sqlConTest.ConnectionString = "Data Source=" + ServerIP + ";Initial Catalog=OW-ERP-SYS;Persist Security Info=True;User ID=b70340;Password=Lee0911274990;Max pool size = 200;Connection Timeout=0"
57
+        Try
58
+            sqlConTest.Open()
59
+            sqlConTest.Close()
60
+        Catch ex As Exception
61
+        Finally
62
+            bConnect = True
63
+        End Try
64
+#Disable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
65
+    End Function
66
+#Enable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
67
+#End Region
68
+End Module

+ 68
- 0
OW-UPDATE/SQL_連線狀態模組2.vb Näytä tiedosto

1
+Module SQL_連線狀態模組2
2
+#Region "——连接测试:避免等待时间过长——"
3
+    Dim bConnect As Boolean
4
+    Dim BgWorker1 As New System.ComponentModel.BackgroundWorker
5
+    Dim ServerIP As String
6
+    ''' <summary>
7
+    ''' 测试连接:True-连接成功,False-连接失败
8
+    ''' 参数[必选]:服务器IP
9
+    ''' 参数[可选]:等待超时时间(秒),默认为1.2秒
10
+    ''' </summary>
11
+    ''' <returns></returns>
12
+    ''' <remarks></remarks>
13
+    Function ConnectTest2(ByVal varServerIP As String, Optional ByVal varTimeout As Decimal = 1.5) As Boolean
14
+        AddHandler BgWorker1.DoWork, AddressOf BgWorker1_DoWork
15
+        Dim g As Integer
16
+        Dim k As Integer
17
+        If BgWorker1.CancellationPending Then
18
+            BgWorker1.CancelAsync()
19
+            '取消BackgroundWorker執行中的工作
20
+        End If
21
+        Try
22
+            If varServerIP = "" Then
23
+                Exit Function
24
+            End If
25
+            ServerIP = varServerIP
26
+            If varTimeout <= 0 Then
27
+                varTimeout = 1.5
28
+            End If
29
+            k = Int(varTimeout * 10)
30
+            bConnect = False
31
+            BgWorker1.WorkerSupportsCancellation = True
32
+            BgWorker1.RunWorkerAsync()
33
+            For g = 1 To k '1.2s
34
+                Threading.Thread.Sleep(100)
35
+                If bConnect = True Then
36
+                    ConnectTest2 = True
37
+                    Exit Function
38
+                End If
39
+            Next
40
+            ConnectTest2 = False
41
+            BgWorker1.CancelAsync()
42
+        Catch ex As Exception
43
+            MsgBox(ex.Message)
44
+        End Try
45
+#Disable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
46
+    End Function
47
+#Enable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
48
+    '--异步动作
49
+    Private Sub BgWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
50
+        Call ConnectMSSQLServer()
51
+    End Sub
52
+    '--连接数据库
53
+    Private Function ConnectMSSQLServer() As Boolean
54
+        Dim sqlConTest As Data.SqlClient.SqlConnection ' 连接   
55
+        sqlConTest = New Data.SqlClient.SqlConnection
56
+        sqlConTest.ConnectionString = "Data Source=" + ServerIP + ";Initial Catalog=OW-ERP-SYS;Persist Security Info=True;User ID=b70340;Password=Lee0911274990;Max pool size = 200;Connection Timeout=0"
57
+        Try
58
+            sqlConTest.Open()
59
+            sqlConTest.Close()
60
+        Catch ex As Exception
61
+        Finally
62
+            bConnect = True
63
+        End Try
64
+#Disable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
65
+    End Function
66
+#Enable Warning BC42353 ' 函式在所有程式碼路徑上皆不會傳回值
67
+#End Region
68
+End Module

+ 79
- 0
OW-UPDATE/app.manifest Näytä tiedosto

1
+<?xml version="1.0" encoding="utf-8"?>
2
+<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
3
+  <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
4
+  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
5
+    <security>
6
+      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
7
+        <!-- UAC 資訊清單選項
8
+             如果要變更 Windows 使用者帳戶控制層級,請將 
9
+             requestedExecutionLevel 節點以下列其中之一取代。
10
+
11
+        <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
12
+        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
13
+        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />
14
+
15
+            指定 requestedExecutionLevel 項目會停用檔案及登錄虛擬化。
16
+            如果您的應用程式需要針對回溯相容性進行這項虛擬化,請移除這個
17
+            項目。
18
+        -->
19
+        <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
20
+      </requestedPrivileges>
21
+    </security>
22
+  </trustInfo>
23
+
24
+  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
25
+    <application>
26
+      <!-- 此應用程式已通過測試,並設計要搭配使用的
27
+           應用程式版本清單。請取消註解適當元素,
28
+           Windows 就會自動選取最相容的環境。 -->
29
+
30
+      <!-- Windows Vista -->
31
+      <!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />-->
32
+
33
+      <!-- Windows 7 -->
34
+      <!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />-->
35
+
36
+      <!-- Windows 8 -->
37
+      <!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />-->
38
+
39
+      <!-- Windows 8.1 -->
40
+      <!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />-->
41
+
42
+      <!-- Windows 10 -->
43
+      <!--<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />-->
44
+
45
+    </application>
46
+  </compatibility>
47
+
48
+  <!-- 表示應用程式為 DPI 感知,Windows 不會在 DPI 變高時自動
49
+       縮放。Windows Presentation Foundation (WPF) 應用程式會自動感知 DPI,因此不需要
50
+       加入。以 .NET Framework 4.6 為目標的 Windows Form 應用程式若加入這項設定,也
51
+       應該在其 app.config 中將 'EnableWindowsFormsHighDpiAutoResizing' 設定為 'true'。
52
+       
53
+       將應用程式設定為感知長路徑。請參閱 https://docs.microsoft.com/windows/win32/fileio/maximum-file-path-limitation-->
54
+  <!--
55
+  <application xmlns="urn:schemas-microsoft-com:asm.v3">
56
+    <windowsSettings>
57
+      <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
58
+      <longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware>
59
+    </windowsSettings>
60
+  </application>
61
+  -->
62
+
63
+  <!-- 啟用 Windows 通用控制項和對話方塊的佈景主題 (Windows XP 以後版本) -->
64
+  <!--
65
+  <dependency>
66
+    <dependentAssembly>
67
+      <assemblyIdentity
68
+          type="win32"
69
+          name="Microsoft.Windows.Common-Controls"
70
+          version="6.0.0.0"
71
+          processorArchitecture="*"
72
+          publicKeyToken="6595b64144ccf1df"
73
+          language="*"
74
+        />
75
+    </dependentAssembly>
76
+  </dependency>
77
+  -->
78
+
79
+</assembly>

+ 1
- 0
OW-UPDATE/bin/Debug/OPUPDATE.txt Näytä tiedosto

1
+...

BIN
OW-UPDATE/bin/Debug/OW-UPDATE.exe Näytä tiedosto


+ 6
- 0
OW-UPDATE/bin/Debug/OW-UPDATE.exe.config Näytä tiedosto

1
+<?xml version="1.0" encoding="utf-8" ?>
2
+<configuration>
3
+    <startup>
4
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
5
+    </startup>
6
+</configuration>

BIN
OW-UPDATE/bin/Debug/OW-UPDATE.pdb Näytä tiedosto


+ 44
- 0
OW-UPDATE/bin/Debug/OW-UPDATE.xml Näytä tiedosto

1
+<?xml version="1.0"?>
2
+<doc>
3
+<assembly>
4
+<name>
5
+OW-UPDATE
6
+</name>
7
+</assembly>
8
+<members>
9
+<member name="T:OW_UPDATE.My.Resources.Resources">
10
+<summary>
11
+  A strongly-typed resource class, for looking up localized strings, etc.
12
+</summary>
13
+</member>
14
+<member name="P:OW_UPDATE.My.Resources.Resources.ResourceManager">
15
+<summary>
16
+  Returns the cached ResourceManager instance used by this class.
17
+</summary>
18
+</member>
19
+<member name="P:OW_UPDATE.My.Resources.Resources.Culture">
20
+<summary>
21
+  Overrides the current thread's CurrentUICulture property for all
22
+  resource lookups using this strongly typed resource class.
23
+</summary>
24
+</member>
25
+<member name="M:OW_UPDATE.SQL_連線狀態模組1.ConnectTest1(System.String,System.Decimal)">
26
+ <summary>
27
+ 测试连接:True-连接成功,False-连接失败
28
+ 参数[必选]:服务器IP
29
+ 参数[可选]:等待超时时间(秒),默认为1.2秒
30
+ </summary>
31
+ <returns></returns>
32
+ <remarks></remarks>
33
+</member>
34
+<member name="M:OW_UPDATE.SQL_連線狀態模組2.ConnectTest2(System.String,System.Decimal)">
35
+ <summary>
36
+ 测试连接:True-连接成功,False-连接失败
37
+ 参数[必选]:服务器IP
38
+ 参数[可选]:等待超时时间(秒),默认为1.2秒
39
+ </summary>
40
+ <returns></returns>
41
+ <remarks></remarks>
42
+</member>
43
+</members>
44
+</doc>

+ 1
- 0
OW-UPDATE/bin/Debug/OWUPDATE.txt Näytä tiedosto

1
+1

+ 7
- 0
OW-UPDATE/obj/Debug/.NETFramework,Version=v4.6.AssemblyAttributes.vb Näytä tiedosto

1
+' <autogenerated/>
2
+            Option Strict Off
3
+            Option Explicit On
4
+
5
+            Imports System
6
+            Imports System.Reflection
7
+            <Assembly: Global.System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.6", FrameworkDisplayName:=".NET Framework 4.6")>

BIN
OW-UPDATE/obj/Debug/DesignTimeResolveAssemblyReferences.cache Näytä tiedosto


BIN
OW-UPDATE/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache Näytä tiedosto


BIN
OW-UPDATE/obj/Debug/OW-UPDATE.exe Näytä tiedosto


BIN
OW-UPDATE/obj/Debug/OW-UPDATE.pdb Näytä tiedosto


BIN
OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.AssemblyReference.cache Näytä tiedosto


+ 1
- 0
OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.CoreCompileInputs.cache Näytä tiedosto

1
+7fd1a05a207f94b314ee591569ae5b23b483acbf

+ 13
- 0
OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.FileListAbsolute.txt Näytä tiedosto

1
+D:\Project1\OW-UPDATE\OW-UPDATE\bin\Debug\OW-UPDATE.exe.config
2
+D:\Project1\OW-UPDATE\OW-UPDATE\bin\Debug\OW-UPDATE.exe
3
+D:\Project1\OW-UPDATE\OW-UPDATE\bin\Debug\OW-UPDATE.pdb
4
+D:\Project1\OW-UPDATE\OW-UPDATE\bin\Debug\OW-UPDATE.xml
5
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.vbproj.AssemblyReference.cache
6
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.vbproj.SuggestedBindingRedirects.cache
7
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW_UPDATE.Resources.resources
8
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW_UPDATE.OW_UPDATE.resources
9
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.vbproj.GenerateResource.cache
10
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.vbproj.CoreCompileInputs.cache
11
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.exe
12
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.xml
13
+D:\Project1\OW-UPDATE\OW-UPDATE\obj\Debug\OW-UPDATE.pdb

BIN
OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.GenerateResource.cache Näytä tiedosto


+ 0
- 0
OW-UPDATE/obj/Debug/OW-UPDATE.vbproj.SuggestedBindingRedirects.cache Näytä tiedosto


+ 44
- 0
OW-UPDATE/obj/Debug/OW-UPDATE.xml Näytä tiedosto

1
+<?xml version="1.0"?>
2
+<doc>
3
+<assembly>
4
+<name>
5
+OW-UPDATE
6
+</name>
7
+</assembly>
8
+<members>
9
+<member name="T:OW_UPDATE.My.Resources.Resources">
10
+<summary>
11
+  A strongly-typed resource class, for looking up localized strings, etc.
12
+</summary>
13
+</member>
14
+<member name="P:OW_UPDATE.My.Resources.Resources.ResourceManager">
15
+<summary>
16
+  Returns the cached ResourceManager instance used by this class.
17
+</summary>
18
+</member>
19
+<member name="P:OW_UPDATE.My.Resources.Resources.Culture">
20
+<summary>
21
+  Overrides the current thread's CurrentUICulture property for all
22
+  resource lookups using this strongly typed resource class.
23
+</summary>
24
+</member>
25
+<member name="M:OW_UPDATE.SQL_連線狀態模組1.ConnectTest1(System.String,System.Decimal)">
26
+ <summary>
27
+ 测试连接:True-连接成功,False-连接失败
28
+ 参数[必选]:服务器IP
29
+ 参数[可选]:等待超时时间(秒),默认为1.2秒
30
+ </summary>
31
+ <returns></returns>
32
+ <remarks></remarks>
33
+</member>
34
+<member name="M:OW_UPDATE.SQL_連線狀態模組2.ConnectTest2(System.String,System.Decimal)">
35
+ <summary>
36
+ 测试连接:True-连接成功,False-连接失败
37
+ 参数[必选]:服务器IP
38
+ 参数[可选]:等待超时时间(秒),默认为1.2秒
39
+ </summary>
40
+ <returns></returns>
41
+ <remarks></remarks>
42
+</member>
43
+</members>
44
+</doc>

BIN
OW-UPDATE/obj/Debug/OW_UPDATE.OW_UPDATE.resources Näytä tiedosto


BIN
OW-UPDATE/obj/Debug/OW_UPDATE.Resources.resources Näytä tiedosto


BIN
OW-UPDATE/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll Näytä tiedosto


BIN
OW-UPDATE/update_icon.ico Näytä tiedosto


+ 19
- 0
OW-UPDATE/全域變數.vb Näytä tiedosto

1
+Module 全域變數
2
+    Public 登入人IP As String : Public AA(99) As String
3
+    Public Target As String : Public Target1 As String : Public Target2 As String : Public FTP帳號 As String : Public FTP密碼 As String : Public FTP物理位置 As String
4
+    Friend Sub SQL_連線字串_測試()
5
+        ConString = "Data Source=" & 登入人IP & ";Initial Catalog=OW-ERP-SYS;Persist Security Info=True;User ID=b70340;Password=Lee0911274990;Max pool size = 200;Connection Timeout=0"
6
+    End Sub
7
+    Friend Sub SQL_連線字串_正式()
8
+        ConString = "Data Source=" & 登入人IP & ";Initial Catalog=OW-ERP-SYS;Persist Security Info=True;User ID=b70340;Password=Lee0911274990;Max pool size = 200;Connection Timeout=0"
9
+    End Sub
10
+    Public 平均數 As Integer : Public 最終數 As Integer = 0 : Public 資料數 As Integer = 0
11
+    Public Class MyModule1
12
+        Friend Shared Sub 進度條()
13
+            平均數 = 10000 / 資料數
14
+            最終數 += 平均數
15
+            If 最終數 > 10000 Then : 最終數 = 10000 : End If
16
+            OW_UPDATE.ProgressBar1.Value = 最終數
17
+        End Sub
18
+    End Class
19
+End Module

BIN
OW-UPDATE/圖片/update_icon.ico Näytä tiedosto


Loading…
Peruuta
Tallenna