打开桌面时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
...全文
5401 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的内容
网管教程 从入门到精通软件篇 ★一。★详细的xp修复控制台命令和用法!!! 放入xp(2000)的光盘,安装候选R,修复! Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的诊断和测试以及恢复系统功能的工具。小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。   Bootcfg   bootcfg 命令启动配置和故障恢复(对于大多数计算机,即 boot.ini 文件)。   含有下列参数的 bootcfg 命令仅在使用故障恢复控制台才可用。可在命令提示符下使用带有不同参数的 bootcfg 命令。   用法:   bootcfg /default  设置默认引导项。   bootcfg /add    向引导列表中添加 Windows 安装。   bootcfg /rebuild  重复全部 Windows 安装过程并允许用户选择要添加的内容。   注意:使用 bootcfg /rebuild 之前,应先通过 bootcfg /copy 命令备份 boot.ini 文件。   bootcfg /scan    扫描用于 Windows 安装的所有磁盘并显示结果。   注意:这些结果被静态存储,并用于本次话。如果在本次话期间磁盘配置发生变化,为获得更新的扫描,必须先重新启动计算机,然后再次扫描磁盘。   bootcfg /list   列出引导列表中已有的条目。   bootcfg /disableredirect 在启动引导程序中禁用重定向。   bootcfg /redirect [ PortBaudRrate] |[ useBiosSettings]   在启动引导程序中通过指定配置启用重定向。   范例: bootcfg /redirect com1 115200 bootcfg /redirect useBiosSettings   hkdsk   创建并显示磁盘的状态报告。Chkdsk 命令还可列出并纠正磁盘上的错误。   含有下列参数的 chkdsk 命令仅在使用故障恢复控制台才可用。可在命令提示符下使用带有不同参数的 chkdsk 命令。   vol [drive:] [ chkdsk [drive:] [/p] [/r]   参数  无   如果不带任何参数,chkdsk 将显示当前驱动器中的磁盘状态。 drive: 指定要 chkdsk 检查的驱动器。 /p   即使驱动器不在 chkdsk 的检查范围内,也执行彻底检查。该参数不对驱动器做任何更改。 /r   找到坏扇区并恢复可读取的信息。隐含着 /p 参数。   注意 Chkdsk 命令需要 Autochk.exe 文件。如果不能在启动目录(默认为 %systemroot%System32)中找到该文件,将试着在 Windows 安装 CD 中找到它。如果有多引导系统的计算机,必须保证是在包含 Windows 的驱动器上使用该命令。 Diskpart   创建和删除硬盘驱动器上的分区。diskpart 命令仅在使用故障恢复控制台才可用。   diskpart [ /add |/delete] [device_name |drive_name |partition_name] [size]   参数 无   如果不带任何参数,diskpart 命令将启动 diskpart 的 Windows 字符模式版本。   /add   创建新的分区。   /delete   删除现有分区。   device_name   要创建或删除分区的设备。设备名称可从 map 命令的输出获得。例如,设备名称:   DeviceHardDisk0   drive_name   以驱动器号表示的待删除分区。仅与 /delete 同使用。以下是驱动器名称的范例:   D:   partition_name   以分区名称表示的待删除分区。可代替 drive_name 使用。仅与 /delete 同使用。以下是分区名称的范例:   DeviceHardDisk0Partition1    大小   要创建的分区大小,以兆字节 (MB)表示。仅与 /add 同使用。   范例   下例将删除分区: diskpart /delete Device HardDisk0 Partition3 diskpart /delete F:   下例将在硬盘上添加一个 20 MB 的分区:   diskpart /add Device HardDisk0 20   Fixboot
1 / 3(一) 大纲_Python 基础(3 天×6h) 课:18 小(6 小×3 天)课程简介 本课程从零基础开始介绍 Python 编程知识,快速入门 Python 语言基础,循序渐进地掌握 Python 模块的构建和 Python 程序的代码的基本功能的实现。学员基础  了解计算机基本操作,掌握一般文字输入和处理的基础知识 了解计算机软件,硬件等基本概念课程目标  全面认识 Python,包括语言特点、应用领域、安装与执行原理、集成开发环境的使用等 掌握 Python 的基础语法,实现简单的程序编写 熟练使用 Python 的各种数据结构,掌握各自的适用场景 熟练使用模块和包,理解使用模块的好处,在工作中灵活借助模块实现需求课程内容 Python 概述及开发环境搭建 1.1 Python 应用领域 1.2 常见编程语言特点  Python 语言特点 面向对象与面向过程 编译型与解释型1.3 Python IDE 集成开发环境  PyCharm 安装及配置 Python 编程语言基础 2.1 库、包、模块 2.2 变量的定义及命名规范 2.3 书写规范 2.4 命名规范 2.5 运算符  算数运算符、逻辑运算符、赋值运算符、比较运算符、成员运算符、身份运算符2 / 3 运算符优先级 流程控制 3.1 流程控制语句结构 3.2 分支结构 if else 的语法结构及应用场景  多条件判断3.3 循环语句  for 语句 while 语句 嵌套循环 循环控制语句 跳出循环 常用数据类型及其函数 4.1 字符串 str 4.2 整数 int、浮点小数 float 4.3 布尔型 bool 4.4 列表 list  数值列表 range 数值列表转列表:list 函数 遍历列表 列表解析4.5 元组 tuple 4.6 字典 dict 4.7 集合 set 4.8 切片 4.9 在列表中存储字典 4.10 在字典中存储列表、字典 4.11 高级数据类型的运算 4.12 案例演练  练习:登录验证3 / 3 练习:遍历元组 练习:遍历集合 练习:while 循环列表 函数 5.1 函数的定义和作用  定义函数规范 调用函数5.2 函数的参数和返回值 5.3 局部变量与全部变量 5.4 位置参数与关键字参数 5.5 缺省参数与多值参数 5.6 数据的不可变类型与可变类型 5.7 常用内置函数  输出输入函数:print、input dir 函数 包与模块 6.1 了解库、包、模块 6.2 模块的导入方式  导入整个模块(.py) 导入模块中的函数 自定义模块的导入与应用6.3 定义别名 6.4 了解与制作包  导入包的方式6.5 常用标准库  time:日期间计算 os:文件和目录处理

1,486

社区成员

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

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