NSDFile.NSDCopyFile.NSDFileCopyEventArgs メンバ

ファイルコピーのイベント用。


●コンストラクタ

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

●プロパティの一覧

名前 説明
SourceFileSize コピー元のファイルサイズを返します。
CopySize 現在コピー中でコピー先に書き込んだサイズを返します。
EndStyle 終了スタイルを返します。
CallbackObj イベント用オブジェクトを設定します。
SearchStop 中止の設定をします。

●NSDFileCopyEventArgsコンストラクタの説明

構文:Public Sub New()

使用法:Dim ClsEvent As New NSDFileCopyEventArgs( FileSize , CopySize , EndStyle , Object )

引数:

名前 引数渡しの方法 説明
FileSize Long 値渡し(ByVal) ファイルサイズを渡します。
CopySize Long 値渡し(ByVal) コピーサイズを渡します。
EndStyle NSDFileCopy_EndStyle 値渡し(ByVal) 終了スタイルを渡します。
Object Object 値渡し(ByVal) イベントで返すオブジェクトを渡します。

使用例:

NSDFile.NSDCopyFile内で使用されるので使用例はありません。

●NSDFileCopyEventArgsプロパティの説明

名前:SourceFileSize

構文:Public ReadOnly Property SourceFileSize() As Long

機能:コピー元のファイルサイズを返します。

Set値:なし。

Get値:ファイルサイズ。

使用例:

Public Class Form1
    ' ファイルコピー用.
    Dim Cls_CopyFile As NSDFile.NSDCopyFile = Nothing
    ' ファイルのコピーフラグ True:コピー中 False:コピーしていません.
    Dim BlnCls_CopyFileFolder 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_CopyFile Is Nothing) Then
                Cls_CopyFile.Dispose()
                Cls_CopyFile = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー.
    Private Sub Button_Copy_Click( ByVal sender As System.Object, _
                                   ByVal e As System.EventArgs _
                                   ) Handles Button_Copy.Click
        Try
            Select Case BlnCls_CopyFileFolder
                Case False
                    ' コピーを行います.
                    Dim Str_Source As String = Me.TextBoxSource.Text
                    Dim Str_Destination As String = Me.TextBoxDestination.Text
                    Me.Button_Copy.Text = "中止"

                    BlnCls_CopyFileFolder = True
                    ' ファイルのコピー.
                    If (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile = New NSDFile.NSDCopyFile
                    End If
                    Cls_CopyFile.CopyFile(Str_Source, _
                                          Str_Destination, _
                                          True, _
                                          True, _
                                          AddressOf Event_CopyFileDataWriteCallback, _
                                          AddressOf Event_CopyFileEndCallback, _
                                          Cls_CopyFileDispControl, _
                                          Nothing)
                Case Else
                    ' コピーを中止します.
                    Me.Button_Copy.Text = "コピー"
                    If Not (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile.StopCopyFile = True
                    End If
                    BlnCls_CopyFileFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' コピー先にデータが書き込まれた時に呼び出されるイベント関数.
    Public Sub Event_CopyFileDataWriteCallback(ByVal sender As Object, _
                                               ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            If e.SourceFileSize > 1000000 Then
                ' コピー元のファイルサイズが1000000バイトを超える場合は、コピーを中止します.
                e.SearchStop = True
            Else
                Dim Lng_SourceSize As Long = e.SourceFileSize ' コピー元のファイルサイズ.
                Dim Lng_CopySize As Long = e.CopySize           ' コピーしたサイズ.
                   :
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー終了時に呼び出されるイベント関数.
    Public Sub Event_CopyFileEndCallback(ByVal sender As Object, _
                                         ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            MsgBox(Cls_CopyFile.GetEndStyleMsg(e.EndStyle))
            BlnCls_CopyFileFolder = False
        Catch ex As Exception
        Finally
            Cls_CopyFile.Dispose()
            Cls_CopyFile = Nothing
        End Try
    End Sub
End Class
名前:CopySize
構文:Public ReadOnly Property CopySize() As Long

機能:現在コピー中でコピー先に書き込んだサイズを返します。

Set値:なし。

Get値:ファイルサイズ。

使用例:

Public Class Form1
    ' ファイルコピー用.
    Dim Cls_CopyFile As NSDFile.NSDCopyFile = Nothing
    ' ファイルのコピーフラグ True:コピー中 False:コピーしていません.
    Dim BlnCls_CopyFileFolder 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_CopyFile Is Nothing) Then
                Cls_CopyFile.Dispose()
                Cls_CopyFile = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー.
    Private Sub Button_Copy_Click( ByVal sender As System.Object, _
                                   ByVal e As System.EventArgs _
                                   ) Handles Button_Copy.Click
        Try
            Select Case BlnCls_CopyFileFolder
                Case False
                    ' コピーを行います.
                    Dim Str_Source As String = Me.TextBoxSource.Text
                    Dim Str_Destination As String = Me.TextBoxDestination.Text
                    Me.Button_Copy.Text = "中止"

                    BlnCls_CopyFileFolder = True
                    ' ファイルのコピー.
                    If (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile = New NSDFile.NSDCopyFile
                    End If
                    Cls_CopyFile.CopyFile(Str_Source, _
                                          Str_Destination, _
                                          True, _
                                          True, _
                                          AddressOf Event_CopyFileDataWriteCallback, _
                                          AddressOf Event_CopyFileEndCallback, _
                                          Cls_CopyFileDispControl, _
                                          Nothing)
                Case Else
                    ' コピーを中止します.
                    Me.Button_Copy.Text = "コピー"
                    If Not (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile.StopCopyFile = True
                    End If
                    BlnCls_CopyFileFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' コピー先にデータが書き込まれた時に呼び出されるイベント関数.
    Public Sub Event_CopyFileDataWriteCallback(ByVal sender As Object, _
                                               ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            If e.SourceFileSize > 1000000 Then
                ' コピー元のファイルサイズが1000000バイトを超える場合は、コピーを中止します.
                e.SearchStop = True
            Else
                Dim Lng_SourceSize As Long = e.SourceFileSize ' コピー元のファイルサイズ.
                Dim Lng_CopySize As Long = e.CopySize        ' コピーしたサイズ.
                   :
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー終了時に呼び出されるイベント関数.
    Public Sub Event_CopyFileEndCallback(ByVal sender As Object, _
                                         ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            MsgBox(Cls_CopyFile.GetEndStyleMsg(e.EndStyle))
            BlnCls_CopyFileFolder = False
        Catch ex As Exception
        Finally
            Cls_CopyFile.Dispose()
            Cls_CopyFile = Nothing
        End Try
    End Sub
End Class
名前:EndStyle
構文:Public ReadOnly Property EndStyle() As NSDFileCopy_EndStyle

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

Set値:なし。

Get値:終了スタイル(NSDFileCopy_EndStyle)。

使用例:

Public Class Form1
    ' ファイルコピー用.
    Dim Cls_CopyFile As NSDFile.NSDCopyFile = Nothing
    ' ファイルのコピーフラグ True:コピー中 False:コピーしていません.
    Dim BlnCls_CopyFileFolder 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_CopyFile Is Nothing) Then
                Cls_CopyFile.Dispose()
                Cls_CopyFile = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー.
    Private Sub Button_Copy_Click( ByVal sender As System.Object, _
                                   ByVal e As System.EventArgs _
                                   ) Handles Button_Copy.Click
        Try
            Select Case BlnCls_CopyFileFolder
                Case False
                    ' コピーを行います.
                    Dim Str_Source As String = Me.TextBoxSource.Text
                    Dim Str_Destination As String = Me.TextBoxDestination.Text
                    Me.Button_Copy.Text = "中止"

                    BlnCls_CopyFileFolder = True
                    ' ファイルのコピー.
                    If (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile = New NSDFile.NSDCopyFile
                    End If
                    Cls_CopyFile.CopyFile(Str_Source, _
                                          Str_Destination, _
                                          True, _
                                          True, _
                                          AddressOf Event_CopyFileDataWriteCallback, _
                                          AddressOf Event_CopyFileEndCallback, _
                                          Cls_CopyFileDispControl, _
                                          Nothing)
                Case Else
                    ' コピーを中止します.
                    Me.Button_Copy.Text = "コピー"
                    If Not (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile.StopCopyFile = True
                    End If
                    BlnCls_CopyFileFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' コピー先にデータが書き込まれた時に呼び出されるイベント関数.
    Public Sub Event_CopyFileDataWriteCallback(ByVal sender As Object, _
                                               ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            If e.SourceFileSize > 1000000 Then
                ' コピー元のファイルサイズが1000000バイトを超える場合は、コピーを中止します.
                e.SearchStop = True
            Else
                Dim Lng_SourceSize As Long = e.SourceFileSize ' コピー元のファイルサイズ.
                Dim Lng_CopySize As Long = e.CopySize         ' コピーしたサイズ.
                   :
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー終了時に呼び出されるイベント関数.
    Public Sub Event_CopyFileEndCallback(ByVal sender As Object, _
                                         ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            MsgBox(Cls_CopyFile.GetEndStyleMsg(e.EndStyle))
            BlnCls_CopyFileFolder = False
        Catch ex As Exception
        Finally
            Cls_CopyFile.Dispose()
            Cls_CopyFile = Nothing
        End Try
    End Sub
End Class
名前:CallbackObj
構文:Public Property CallbackObj() As Object

機能:コールバック用オブジェクトを設定します。

Set値:オブジェクトを設定します。

Get値:設定されているオブジェクト。

使用例:

NSDFolderCopy内で呼び出されるので使用例はありません。
名前:SearchStop
構文:Public Property SearchStop() As Boolean

機能:中止の設定をします。

Set値:True :中止します。

False:中止しません。

Get値:Set値を参照。

使用例:

Public Class Form1
    ' ファイルコピー用.
    Dim Cls_CopyFile As NSDFile.NSDCopyFile = Nothing
    ' ファイルのコピーフラグ True:コピー中 False:コピーしていません.
    Dim BlnCls_CopyFileFolder 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_CopyFile Is Nothing) Then
                Cls_CopyFile.Dispose()
                Cls_CopyFile = Nothing
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー.
    Private Sub Button_Copy_Click( ByVal sender As System.Object, _
                                   ByVal e As System.EventArgs _
                                   ) Handles Button_Copy.Click
        Try
            Select Case BlnCls_CopyFileFolder
                Case False
                    ' コピーを行います.
                    Dim Str_Source As String = Me.TextBoxSource.Text
                    Dim Str_Destination As String = Me.TextBoxDestination.Text
                    Me.Button_Copy.Text = "中止"

                    BlnCls_CopyFileFolder = True
                    ' ファイルのコピー.
                    If (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile = New NSDFile.NSDCopyFile
                    End If
                    Cls_CopyFile.CopyFile(Str_Source, _
                                          Str_Destination, _
                                          True, _
                                          True, _
                                          AddressOf Event_CopyFileDataWriteCallback, _
                                          AddressOf Event_CopyFileEndCallback, _
                                          Cls_CopyFileDispControl, _
                                          Nothing)
                Case Else
                    ' コピーを中止します.
                    Me.Button_Copy.Text = "コピー"
                    If Not (Cls_CopyFile Is Nothing) Then
                        Cls_CopyFile.StopCopyFile = True
                    End If
                    BlnCls_CopyFileFolder = False
            End Select
        Catch ex As Exception
        End Try
    End Sub

    ' コピー先にデータが書き込まれた時に呼び出されるイベント関数.
    Public Sub Event_CopyFileDataWriteCallback(ByVal sender As Object, _
                                               ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            If e.SourceFileSize > 1000000 Then
                ' コピー元のファイルサイズが1000000バイトを超える場合は、コピーを中止します.
                e.SearchStop = True
            Else
                Dim Lng_SourceSize As Long = e.SourceFileSize ' コピー元のファイルサイズ.
                Dim Lng_CopySize As Long = e.CopySize         ' コピーしたサイズ.
                   :
            End If
        Catch ex As Exception
        End Try
    End Sub

    ' コピー終了時に呼び出されるイベント関数.
    Public Sub Event_CopyFileEndCallback(ByVal sender As Object, _
                                         ByVal e As NSDFile.NSDCopyFile.NSDFileCopyEventArgs)
        Try
            MsgBox(Cls_CopyFile.GetEndStyleMsg(e.EndStyle))
            BlnCls_CopyFileFolder = False
        Catch ex As Exception
        Finally
            Cls_CopyFile.Dispose()
            Cls_CopyFile = Nothing
        End Try
    End Sub
End Class

 


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