NSDFile.NSDDeleteFolder メンバ

フォルダーを削除します。


●コンストラクタ

名前 説明
NSDFile.NSDDeleteFolder NSDFile.NSDDeleteFolderを初期化します。

●プロパティの一覧

名前 説明
IsDeleteFolderRunning DeleteFolderが稼働中かを返します。
StopDeleteFolder フォルダー削除の中止を設定します。

●メソッドの一覧

名前 引数 戻り値 説明
Dispose なし なし リソースの解放を行います。
GetEndStyleMsg ( NSDDeleteFolder_EndStyle ) String型 終了スタイルの内容を返します。
DeleteFolder ( String ) Boolean型 フォルダーを削除します(同期削除)。
( String , DeleteFolderEventHandler , DeleteFolderEventHandler , DeleteFolderEventHandler ) Boolean型 フォルダーを非同期で削除します。

●イベントの一覧

名前 引数 戻り値 説明
Event_DeleteFolderOneFile ( Object, NSDDeleteFolderEventArgs) なし 1ファイル削除時に返すイベント。
Event_DeleteFolderOneFolder ( Object, NSDDeleteFolderEventArgs) なし 1フォルダー削除時に返すイベント。
Event_DeleteFolderEnd ( Object, NSDDeleteFolderEventArgs) なし フォルダー削除終了時に返すイベント。

●定数の一覧

名前:NSDDeleteFolder_EndStyle (終了スタイル。)
名前 内容
NoErr エラーなし。
Running 実行中。
ErrStop エラーにより中断。
UserStop ストップが行われた。
NotDeleteFolder 削除フォルダーがありません。

NSDDeleteFolderコンストラクタの説明

構文:Public Sub New()

使用法:Dim Cls_DeletyeFolder As New NSDFile.NSDDeleteFolder

引数:なし。

使用例:

Public Class Form1
    Dim Cls_DeleteFolder As New NSDFile.NSDDeleteFolder
        :
End Class

NSDDeleteFolderプロパティの説明

名前:IsDeleteFolderRunning

構文:Public ReadOnly Property IsDeleteFolderRunning() As NSD_File_Run_Style

機能:DeleteFolderが稼働中かを返します。

Set値:なし。

Get値:稼働中かを返します。(NSD_File_Run_Style

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 稼動有無で処理を分けます.
    Private Sub Button_Delete_OK_Click( ByVal sender As System.Object, _
                                        ByVal e As System.EventArgs) _
                                        Handles Button_Delete_OK.Click
        Try
            Select Case Cls_DeleteFolder.IsDeleteFolderRunning
                Case NSDFile.NSD_File_Run_Style.NotRunning
                    ' 稼動していません.
                Case NSDFile.NSD_File_Run_Style.Running
                    ' 稼働中です.
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            MsgBox(Cls_DeleteFolder.GetEndStyleMsg(e.EndStyle))
        Catch ex As Exception
        End Try
    End Sub
End Class
名前:StopDeleteFolder
構文:Public Property StopDeleteFolder() As Boolean

機能:フォルダー削除の中止を設定します。

Set値:True :中止します。

False:中止しません。

Get値:Set値を参照。

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub
End Class

NSDDeleteFolderメソッド の説明

名前:Dispose
構文:Public Overridable Sub Dispose() Implements IDisposable.Dispose

機能:リソースの解放を行います。

※終了時に必ず呼び出します。

引数:なし。

戻り値:なし。

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub
End Class

 

名前:GetEndStyleMsg

構文:Public Function GetEndStyleMsg( EndStyle ) As String

機能:終了スタイルの内容を返します。

引数:

名前 引数渡しの方法 説明
EndStyle NSDDeleteFolder_EndStyle 値渡し(ByVal) 終了スタイルを渡します。

戻り値:String

戻り値の説明:

終了スタイルの内容を返します。

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
                :
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            MsgBox(Cls_DeleteFolder.GetEndStyleMsg(e.EndStyle))
        Catch ex As Exception
        End Try
    End Sub
End Class
名前:DeleteFolder
機能:フォルダーを削除します。
@フォルダーを削除します(同期削除)。

構文:Public Function DeleteFolder( FolderPath ) As Boolean

引数:

 

名前 引数渡しの方法 説明
FolderPath String 値渡し(ByVal) 削除するフォルダのフルパス名を渡します。

戻り値:Boolean

戻り値の説明:

True:成功 False:失敗

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            ' 削除を行います.
            If MsgBox("フォルダーを削除します。" & vbCrLf _
                      & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                If (Cls_DeleteFolder Is Nothing) Then
                    Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                End If

                If Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text) Then
                    MsgBox("削除しました。")
                Else
                    MsgBox("削除に失敗しました。")
                End If
            End If
        Catch ex As Exception
        End Try
    End Sub
End Class

 

Aフォルダーを非同期で削除します。

構文:Public Function DeleteFolder( FolderPath , Event_DeleteFolderOneFile , Event_DeleteFolderOneFolder , Event_DeleteFolderEnd ) As Boolean

引数:

 

名前 引数渡しの方法 説明
FolderPath String 値渡し(ByVal) 削除するフォルダーのフルパス名を渡します。
Event_DeleteFolderOneFile DeleteFolderEventHandler 値渡し(ByVal) ファイルの削除を行う前に返すイベント関数のアドレスを渡します。
※イベント関数が不要な場合は、Nothingを渡します。
Event_DeleteFolderOneFolder DeleteFolderEventHandler 値渡し(ByVal) フォルダーの削除を行う前に返すイベント関数のアドレスを渡します。
※イベント関数が不要な場合は、Nothingを渡します。
Event_DeleteFolderEnd DeleteFolderEventHandler 値渡し(ByVal) フォルダー削除の終了時に返すイベント関数のアドレスを渡します。
※イベント関数が不要な場合は、Nothingを渡します。

戻り値:Boolean

戻り値の説明:

True:成功 False:失敗

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' フォルダー削除用変数.
    Dim IntCls_DeleteFolder_FileCount As Integer = 0    ' 削除ファイル数.
    Dim IntCls_DeleteFolder_FolderCount As Integer = 0  ' 削除フォルダー数.

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Label_FolderDelete1_1.Text = 0
                        Me.Label_FolderDelete2_1.Text = 0

                        IntCls_DeleteFolder_FileCount = 0    ' 削除ファイル数.
                        IntCls_DeleteFolder_FolderCount = 0  ' 削除フォルダー数.

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 稼動有無で処理を分けます.
    Private Sub Button_Delete_OK_Click( ByVal sender As System.Object, _
                                        ByVal e As System.EventArgs) _
                                        Handles Button_Delete_OK.Click
        Try
            Select Case Cls_DeleteFolder.IsDeleteFolderRunning
                Case NSDFile.NSD_File_Run_Style.NotRunning
                    ' 稼動していません.
                Case NSDFile.NSD_File_Run_Style.Running
                    ' 稼働中です.
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除ファイル数をカウントします.
            IntCls_DeleteFolder_FileCount += 1
            Dim Str_FileCount As String = Format(IntCls_DeleteFolder_FileCount, "###,##0")
            ' 削除ファイル数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFile), New Object() {Str_FileCount} )
            Else
                Me.SetLbl_DeleteFile(Str_FileCount)
            End If

                :

            Dim Str_DeleteName As String = e.DeleteName

                :

            If (・・・・) Then
                e.DeleteStop = True
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除フォルダー数をカウントします.
            IntCls_DeleteFolder_FolderCount += 1
            Dim Str_FolderCount As String = Format(IntCls_DeleteFolder_FolderCount, "###,##0")
            ' 削除フォルダー数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFolder), New Object() {Str_FolderCount} )
            Else
                Me.SetLbl_DeleteFolder(Str_FolderCount)
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetButton_DeleteFolder), New Object() {"フォルダー削除"} )
            Else
                Me.SetButton_DeleteFolder("フォルダー削除")
            End If
            MsgBox(Cls_DeleteFolder.GetEndStyleMsg(e.EndStyle))
        Catch ex As Exception
        End Try
    End Sub

    ' 削除ファイル数のテキスト設定.
    Public Sub SetLbl_DeleteFile(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete1_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' 削除フォルダー数のテキスト設定.
    Public Sub SetLbl_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete2_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除用ボタンのテキスト設定.
    Public Sub SetButton_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Button_Delete.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub
End Class

NSDDeleteFolderイベントの説明

 

名前:Event_DeleteFolderOneFile

構文:Public Sub Event_DeleteFolderOneFile( sender , e )

機能:ファイルの削除を行う前に発生するイベント。

DeleteFolderの第2引数でアドレスを渡します。

引数:

名前 引数渡しの方法 説明
sender Object 値渡し(ByVal) Nothingが渡されます。
e NSDDeleteFolderEventArgs 値渡し(ByVal) フォルダー削除用のイベントが渡されます。

戻り値:なし。

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' フォルダー削除用変数.
    Dim IntCls_DeleteFolder_FileCount As Integer = 0    ' 削除ファイル数.
    Dim IntCls_DeleteFolder_FolderCount As Integer = 0  ' 削除フォルダー数.

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Label_FolderDelete1_1.Text = 0
                        Me.Label_FolderDelete2_1.Text = 0

                        IntCls_DeleteFolder_FileCount = 0    ' 削除ファイル数.
                        IntCls_DeleteFolder_FolderCount = 0  ' 削除フォルダー数.

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 稼動有無で処理を分けます.
    Private Sub Button_Delete_OK_Click( ByVal sender As System.Object, _
                                        ByVal e As System.EventArgs) _
                                        Handles Button_Delete_OK.Click
        Try
            Select Case Cls_DeleteFolder.IsDeleteFolderRunning
                Case NSDFile.NSD_File_Run_Style.NotRunning
                    ' 稼動していません.
                Case NSDFile.NSD_File_Run_Style.Running
                    ' 稼働中です.
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除ファイル数をカウントします.
            IntCls_DeleteFolder_FileCount += 1
            Dim Str_FileCount As String = Format(IntCls_DeleteFolder_FileCount, "###,##0")
            ' 削除ファイル数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFile), New Object() {Str_FileCount} )
            Else
                Me.SetLbl_DeleteFile(Str_FileCount)
            End If

                :

            Dim Str_DeleteName As String = e.DeleteName

                :

            If (・・・・) Then
                e.DeleteStop = True
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除フォルダー数をカウントします.
            IntCls_DeleteFolder_FolderCount += 1
            Dim Str_FolderCount As String = Format(IntCls_DeleteFolder_FolderCount, "###,##0")
            ' 削除フォルダー数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFolder), New Object() {Str_FolderCount} )
            Else
                Me.SetLbl_DeleteFolder(Str_FolderCount)
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetButton_DeleteFolder), New Object() {"フォルダー削除"} )
            Else
                Me.SetButton_DeleteFolder("フォルダー削除")
            End If
            MsgBox(Cls_DeleteFolder.GetEndStyleMsg(e.EndStyle))
        Catch ex As Exception
        End Try
    End Sub

    ' 削除ファイル数のテキスト設定.
    Public Sub SetLbl_DeleteFile(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete1_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' 削除フォルダー数のテキスト設定.
    Public Sub SetLbl_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete2_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除用ボタンのテキスト設定.
    Public Sub SetButton_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Button_Delete.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub
End Class

 

名前:Event_DeleteFolderOneFolder

構文:Public Sub Event_DeleteFolderOneFolder( sender , e )

機能:フォルダーの削除を行う前に発生するイベント。

DeleteFolderの第3引数でアドレスを渡します。

引数:

名前 引数渡しの方法 説明
sender Object 値渡し(ByVal) Nothingが渡されます。
e NSDDeleteFolderEventArgs 値渡し(ByVal) フォルダー削除用のイベントが渡されます。

戻り値:なし。

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' フォルダー削除用変数.
    Dim IntCls_DeleteFolder_FileCount As Integer = 0    ' 削除ファイル数.
    Dim IntCls_DeleteFolder_FolderCount As Integer = 0  ' 削除フォルダー数.

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Label_FolderDelete1_1.Text = 0
                        Me.Label_FolderDelete2_1.Text = 0

                        IntCls_DeleteFolder_FileCount = 0    ' 削除ファイル数.
                        IntCls_DeleteFolder_FolderCount = 0  ' 削除フォルダー数.

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 稼動有無で処理を分けます.
    Private Sub Button_Delete_OK_Click( ByVal sender As System.Object, _
                                        ByVal e As System.EventArgs) _
                                        Handles Button_Delete_OK.Click
        Try
            Select Case Cls_DeleteFolder.IsDeleteFolderRunning
                Case NSDFile.NSD_File_Run_Style.NotRunning
                    ' 稼動していません.
                Case NSDFile.NSD_File_Run_Style.Running
                    ' 稼働中です.
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除ファイル数をカウントします.
            IntCls_DeleteFolder_FileCount += 1
            Dim Str_FileCount As String = Format(IntCls_DeleteFolder_FileCount, "###,##0")
            ' 削除ファイル数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFile), New Object() {Str_FileCount} )
            Else
                Me.SetLbl_DeleteFile(Str_FileCount)
            End If

                :

            Dim Str_DeleteName As String = e.DeleteName

                :

            If (・・・・) Then
                e.DeleteStop = True
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除フォルダー数をカウントします.
            IntCls_DeleteFolder_FolderCount += 1
            Dim Str_FolderCount As String = Format(IntCls_DeleteFolder_FolderCount, "###,##0")
            ' 削除フォルダー数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFolder), New Object() {Str_FolderCount} )
            Else
                Me.SetLbl_DeleteFolder(Str_FolderCount)
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetButton_DeleteFolder), New Object() {"フォルダー削除"} )
            Else
                Me.SetButton_DeleteFolder("フォルダー削除")
            End If
            MsgBox(Cls_DeleteFolder.GetEndStyleMsg(e.EndStyle))
        Catch ex As Exception
        End Try
    End Sub

    ' 削除ファイル数のテキスト設定.
    Public Sub SetLbl_DeleteFile(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete1_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' 削除フォルダー数のテキスト設定.
    Public Sub SetLbl_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete2_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除用ボタンのテキスト設定.
    Public Sub SetButton_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Button_Delete.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub
End Class
名前:Event_DeleteFolderEnd

構文:Public Sub Event_DeleteFolderEnd( sender , e )

機能:フォルダー削除の終了時に発生するイベント。

DeleteFolderの第4引数でアドレスを渡します。

引数:

名前 引数渡しの方法 説明
sender Object 値渡し(ByVal) Nothingが渡されます。
e NSDDeleteFolderEventArgs 値渡し(ByVal) フォルダー削除用のイベントが渡されます。

戻り値:なし。

使用例:

Public Class Form1
    ' フォルダー削除用.
    Dim Cls_DeleteFolder As NSDFile.NSDDeleteFolder = Nothing
    ' フォルダー削除フラグ True:削除中 False:削除していません.
    Dim BlnCls_DeleteFolder As Boolean = False

    ' フォルダー削除用変数.
    Dim IntCls_DeleteFolder_FileCount As Integer = 0    ' 削除ファイル数.
    Dim IntCls_DeleteFolder_FolderCount As Integer = 0  ' 削除フォルダー数.

    ' FormClosing.
    Private Sub Form1_FormClosing(ByVal sender As Object, _
                                  ByVal e As System.Windows.Forms.FormClosingEventArgs _
                                  ) Handles Me.FormClosing
        Try
            ' フォルダー削除の解放.                    
            If Not (Cls_DeleteFolder Is Nothing) Then
                Cls_DeleteFolder.Dispose()
                Cls_DeleteFolder = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除."
    Private Sub Button_Delete_Click( ByVal sender As System.Object, _
                                     ByVal e As System.EventArgs _
                                     ) Handles Button_Delete.Click
        Try
            Select Case BlnCls_DeleteFolder
                Case False
                    ' 削除を行います.
                    If MsgBox("フォルダーを削除します。" & vbCrLf _
                              & "よろしいですか?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
                        BlnCls_DeleteFolder = True

                        Me.Label_FolderDelete1_1.Text = 0
                        Me.Label_FolderDelete2_1.Text = 0

                        IntCls_DeleteFolder_FileCount = 0    ' 削除ファイル数.
                        IntCls_DeleteFolder_FolderCount = 0  ' 削除フォルダー数.

                        Me.Button_Delete.Text = "中止"
                        If (Cls_DeleteFolder Is Nothing) Then
                            Cls_DeleteFolder = New NSDFile.NSDDeleteFolder
                        End If

                        Cls_DeleteFolder.DeleteFolder(Me.TextBox_Delete.Text, _
                                                      AddressOf EventVal_DeleteFolderOneFileCallback, _
                                                      AddressOf EventVal_DeleteFolderOneFolderCallback, _
                                                      AddressOf EventVal_DeleteFolderEndCallback)
                    End If
                Case Else
                    ' 削除を中止します.
                    Me.Button_Delete.Text = "フォルダー削除"
                    If Not (Cls_DeleteFolder Is Nothing) Then
                        Cls_DeleteFolder.StopDeleteFolder = True
                    End If
                    BlnCls_DeleteFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 稼動有無で処理を分けます.
    Private Sub Button_Delete_OK_Click( ByVal sender As System.Object, _
                                        ByVal e As System.EventArgs) _
                                        Handles Button_Delete_OK.Click
        Try
            Select Case Cls_DeleteFolder.IsDeleteFolderRunning
                Case NSDFile.NSD_File_Run_Style.NotRunning
                    ' 稼動していません.
                Case NSDFile.NSD_File_Run_Style.Running
                    ' 稼働中です.
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' 1ファイル削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFileCallback( ByVal sender As Object, _
                                                      ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除ファイル数をカウントします.
            IntCls_DeleteFolder_FileCount += 1
            Dim Str_FileCount As String = Format(IntCls_DeleteFolder_FileCount, "###,##0")
            ' 削除ファイル数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFile), New Object() {Str_FileCount} )
            Else
                Me.SetLbl_DeleteFile(Str_FileCount)
            End If

                :

            Dim Str_DeleteName As String = e.DeleteName

                :

            If (・・・・) Then
                e.DeleteStop = True
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' 1フォルダー削除時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderOneFolderCallback( ByVal sender As Object, _
                                                        ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            ' 削除フォルダー数をカウントします.
            IntCls_DeleteFolder_FolderCount += 1
            Dim Str_FolderCount As String = Format(IntCls_DeleteFolder_FolderCount, "###,##0")
            ' 削除フォルダー数を表示します.
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetLbl_DeleteFolder), New Object() {Str_FolderCount} )
            Else
                Me.SetLbl_DeleteFolder(Str_FolderCount)
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除終了時に呼び出されるイベント関数.
    Private Sub EventVal_DeleteFolderEndCallback( ByVal sender As Object, _
                                                  ByVal e As NSDFile.NSDDeleteFolder.NSDDeleteFolderEventArgs)
        Try
            If Me.InvokeRequired Then
                Me.Invoke(New SetName_Invoke(AddressOf SetButton_DeleteFolder), New Object() {"フォルダー削除"} )
            Else
                Me.SetButton_DeleteFolder("フォルダー削除")
            End If
            MsgBox(Cls_DeleteFolder.GetEndStyleMsg(e.EndStyle))
        Catch ex As Exception
        End Try
    End Sub

    ' 削除ファイル数のテキスト設定.
    Public Sub SetLbl_DeleteFile(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete1_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' 削除フォルダー数のテキスト設定.
    Public Sub SetLbl_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Label_FolderDelete2_1.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub

    ' フォルダー削除用ボタンのテキスト設定.
    Public Sub SetButton_DeleteFolder(ByVal StrVal_Text As String)
        Try
            Me.Button_Delete.Text = StrVal_Text
        Catch ex As Exception
        End Try
    End Sub
End Class

Copyright (C) 2010-2012 Nihon System Developer Corp. All Rights Reserved.