Visual Basic Tips


ファイルのゴミ箱への移動(API)


ファイルをゴミ箱へ移動します。確認ダイアログ(下のダイアログ)を出力する場合はsdtSHFOP.fFlags にFOF_NOCONFIRMATIONを指定しなければ出力されます。



Private Sub
Form_Load()
  
Dim sdtSHFOP As SHFILEOPSTRUCT

  sdtSHFOP.hwnd = Form1.hwnd
  sdtSHFOP.wFunc = FO_DELETE
'Delete
  sdtSHFOP.pFrom =
App.Path & "\work.txt"
  sdtSHFOP.fFlags = FOF_ALLOWUNDO
Or FOF_NOCONFIRMATION '元に戻す+確認ダイアログを表示しない

  
If SHFileOperation(sdtSHFOP) <> 0 Then
    MsgBox "失敗"
  
End If
End Sub

'-------------------------------------------------------
'
'-------------------------------------------------------
Public Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Public Const FO_DELETE = &H3
Public Const FOF_ALLOWUNDO = &H40
Public Const FOF_NOCONFIRMATION = &H10 ' Don't prompt the user.

Public 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 ' only used if FOF_SIMPLEPROGRESS
End Type


DownLoad vbtips048.lzh 2KB (VB6.0)