Credo di aver risolto aggirando il problema!

Questo è il codice che credo sia del vostro sito:

Attiva la copia classica del S.O. e quindi posso fare un annulla dalla popup, e lascia attivo quindi il processo padre sottostante, nel processo padre verifico solo con un timer il file e quindi gestisco la cosa verificando se il file è stato copiato per intero o no. Comunque grazie.
Portare tutto su NET sarebbe praticamente impossibile, visto che l'applicativo in questione è complesso e pesa più di 400Kb compilato!

'NOTE - These constants and some of the code is taken from
'KB article Q151799...

Option Explicit

Private Const FO_COPY = &H2& 'Copies the files specified
'in the pFrom member to the
'location specified in the
'pTo member.

Private Const FO_DELETE = &H3& 'Deletes the files specified
'in pFrom (pTo is ignored.)

Private Const FO_MOVE = &H1& 'Moves the files specified
'in pFrom to the location
'specified in pTo.

Private Const FO_RENAME = &H4& 'Renames the files
'specified in pFrom.

Private Const FOF_ALLOWUNDO = &H40& 'Preserve Undo information.
Private Const FOF_CONFIRMMOUSE = &H2& 'Not currently implemented.
Private Const FOF_CREATEPROGRESSDLG = &H0& 'handle to the parent
'window for the
'progress dialog box.

Private Const FOF_FILESONLY = &H80& 'Perform the operation
'on files only if a
'wildcard file name
'(*.*) is specified.

Private Const FOF_MULTIDESTFILES = &H1& 'The pTo member
'specifies multiple
'destination files (one
'for each source file)
'rather than one
'directory where all
'source files are
'to be deposited.

Private Const FOF_NOCONFIRMATION = &H10& 'Respond with Yes to
'All for any dialog box
'that is displayed.

Private Const FOF_NOCONFIRMMKDIR = &H200& 'Does not confirm the
'creation of a new
'directory if the
'operation requires one
'to be created.

Private Const FOF_RENAMEONCOLLISION = &H8& 'Give the file being
'operated on a new name
'in a move, copy, or
'rename operation if a
'file with the target
'name already exists.

Private Const FOF_SILENT = &H4& 'Does not display a
'progress dialog box.

Private Const FOF_SIMPLEPROGRESS = &H100& 'Displays a progress
'dialog box but does
'not show the
'file names.

Private Const FOF_WANTMAPPINGHANDLE = &H20&
'If FOF_RENAMEONCOLLISION is specified,
'the hNameMappings member will be filled
'in if any files were renamed.
' The SHFILOPSTRUCT is not double-word aligned. If no steps are
' taken, the last 3 variables will not be passed correctly. This
' has no impact unless the progress title needs to be changed.

Private Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String
End Type

Private Declare Sub CopyMemory Lib "KERNEL32" _
Alias "RtlMoveMemory" (hpvDest As Any, _
hpvSource As Any, ByVal cbCopy As Long)

Private Declare Function SHFileOperation Lib "Shell32.dll" _
Alias "SHFileOperationA" (lpFileOp As Any) As Long




Private Sub cmdCopy_Click()
Dim result As Long
Dim lenFileop As Long
Dim foBuf() As Byte
Dim fileop As SHFILEOPSTRUCT

lenFileop = LenB(fileop) ' double word alignment increase
ReDim foBuf(1 To lenFileop) ' the size of the structure.

With fileop

.hwnd = Me.hwnd
.wFunc = FO_COPY 'This means that the Function will be Copy
'Look in the General Declerations for more
'constants to use with the Copy Box...

'BELOW: The files to be copied, you can use wild cards, or
'just specify each file. Each file to be copied must be seperated
'by vbNullChar and finally 2 of them at the end...
'.pFrom = App.Path & "\readme.html" _
' & vbNullChar _
' & App.Path & "\readme.doc" _
' & vbNullChar _
' & App.Path & "\readme.txt" _
' & vbNullChar _
' & vbNullChar

'F:\Streaming
.pFrom = "F:\Streaming" & "\dabo suini.mov"

.pTo = "F:\Streaming\output" & "\dabo suini.mov" 'Where the files will end up - you can specify a
'directory and it will be created(use a flag{see below}
'if you wish the directory to be created without asking...

'BELOW: Which 'flags' you wish to use - these are defined by the
'Constants in the General Declerations - you can hide the progress bar,
'or do a few more things...
.fFlags = FOF_CREATEPROGRESSDLG

'Give the dialog box a title...
.lpszProgressTitle = "VB HowTo Copy Example " & _
vbNullChar _
& vbNullChar
End With

'Call the CopyMemory procedure and copy the
'structure into a byte array(??)
Call CopyMemory(foBuf(1), fileop, lenFileop)
Call CopyMemory(foBuf(19), foBuf(21), 12)

'This is used for Error Handling - 0 means everything was
'fine, any other number means their was an error...
result = SHFileOperation(foBuf(1))

'ERROR HANDLER....
If result <> 0 Then ' Operation failed
MsgBox Err.LastDllError 'Show the error returned from
'the API.
Else
If fileop.fAnyOperationsAborted <> 0 Then
MsgBox "Operation Failed"
End If
End If

End Sub