打开桌面时dir会出现dir无效的过程调用或参数

qq_38084182 2017-04-17 03:21:58
Private Sub Command9_Click()
Dim lpIDList As Long

Dim sBuffer As String

Dim szTitle As String

Dim tBrowseInfo As BrowseInfo

Dim FileName As String, mypath As String

szTitle = App.Path

With tBrowseInfo

.hWndOwner = Me.hWnd

.lpszTitle = lstrcat(szTitle, "")

.ulFlags = BIF_RETURNONLYFSDIRS + BIF_DONTGOBELOWDOMAIN

End With

lpIDList = SHBrowseForFolder(tBrowseInfo)

If (lpIDList) Then

sBuffer = Space(MAX_PATH)

SHGetPathFromIDList lpIDList, sBuffer

sBuffer = Left(sBuffer, InStr(sBuffer, vbNullChar) - 1)

If Dir(sBuffer) = "" Then

FileName = Dir(sBuffer & "\*.jpg")

Do

List2.AddItem FileName
FileName = Dir

Loop Until FileName = ""

Else

End If

End If
End Sub
...全文
5399 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
of123 2017-04-18
  • 打赏
  • 举报
回复
If Dir(sBuffer) > "" Then
舉杯邀明月 2017-04-17
  • 打赏
  • 举报
回复
逻辑有问题。 [code=Text]If Dir(sBuffer) = "" Then FileName = Dir(sBuffer & "\*.jpg") Do . . . . . . [/code] 当“If Dir(sBuffer) = "" Then”这句的条件“成立”时,那么说明“选择的目录”无效、不可访问等,   那又怎么能去执行 FileName = Dir(sBuffer & "\*.jpg") 等操作?
赵4老师 2017-04-17
  • 打赏
  • 举报
回复
仅供参考:
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Const SYNCHRONIZE = &H100000
Private Const INFINITE = &HFFFFFFFF
Private Sub ShellWait(cmd As String)
Dim pId As Long, pHnd As Long, r As Long
    Form1.Refresh
    pId = Shell(cmd, vbHide)
    pHnd = OpenProcess(SYNCHRONIZE, 0, pId)
    If pHnd <> 0 Then
        Do
           r = WaitForSingleObject(pHnd, 1000) '等1秒
           DoEvents
        Loop While r <> 0 And terminateFlag = False
        Call CloseHandle(pHnd)
    End If
End Sub
 ShellWait "cmd.exe /c dir /b /a-d /o-d d:\mydir\*.jpg >d:\jpgfiles.txt"
 '读文件d:\jpgfiles.txt的内容

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧