win7 下CommonDialog控件的 InitDir 不起作用

sonrin 2013-01-28 10:52:17
各位,在win7 下CommonDialog控件的 InitDir 不起作用,这是为啥啊,在调试的时候没有问题,可是在编译成exe之后再测试,就不起作用了,总是设定为上次使用过的路径,不会指定到我设定的InitDir 。谢谢各位了。如下例子,如果指定了一次E盘的话,下次打开默认就是E盘了,而不是D盘。在XP下测试,没有问题,换到Win7下就不成了。(调试环境没有问题,直接执行EXE就不可以了)

Private Sub Command2_Click()
Path = "D:\"
With CommonDialog1
.FileName = "11.log"
.InitDir = Path
.ShowOpen
End With
End Sub
...全文
342 8 打赏 收藏 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2013-01-29
  • 打赏
  • 举报
回复
ShowSave 会更改当前目录。
找找规律:调用前的当前目录 CurDir、设置前的 InitDir、设置后的 InitDir。
Tiger_Zhao 2013-01-28
  • 打赏
  • 举报
回复
明显 Win7 下 VB6.exe 和 你的程序.exe 的权限不一样。
1)检查 UAC 相关。
2)检查防毒软件设置。
sonrin 2013-01-28
  • 打赏
  • 举报
回复
如果写成下面这样就可以,就是第一次和第一次以后的打开的路径稍稍变化以下,就一直能设定InitDir了。为啥啊? Dim i As Integer Private Sub Command1_Click() On Error Resume Next If i = 0 Then Flg_ExcelPath = "D:\TEST\" Else Flg_ExcelPath = "D:\TEST" End If Flg_ExcelName = "a1.txt" Text3.Text = Err.Number With CDL_ExportToExcel .InitDir = Flg_ExcelPath .FileName = Flg_ExcelName .CancelError = False .DialogTitle = "保存数据到Excel" .ShowSave End With Text4.Text = Err.Number Text1.Text = Flg_ExcelPath Text2.Text = CDL_ExportToExcel.InitDir i = i + 1 End Sub Private Sub Form_Load() i = 1 End Sub
sonrin 2013-01-28
  • 打赏
  • 举报
回复
帮忙看看呗,急啊
sonrin 2013-01-28
  • 打赏
  • 举报
回复
是这样的,例如,我第一次编译出来的exe叫1.exe 指定的默认路径为D:\111\ 这时是不好用的,指定的initDir无效。 我如果在编译一次1.exe 默认路径换为D:\222\ 这时,指定的initDir 就有效了. ------ 总结了一下,就是每个exe指定的第一个initDir 都是无效的,从第二次开始指定的initDir 就有效了。就感觉像要初始化一下似的 不知道win7把上次默认打开的路径记到哪儿了。太迷茫了
Tiger_Zhao 2013-01-28
  • 打赏
  • 举报
回复
还有各种反木马、反键盘记录、反截屏等软件也可能阻止必要的消息发送。
sonrin 2013-01-28
  • 打赏
  • 举报
回复
我已经在编译出来的exe上右键选择用管理员权限执行了。
UAC要检查哪些项目啊,我已经全关闭了,参考图片。
另外杀毒软件都关闭了
bcrun 2013-01-28
  • 打赏
  • 举报
回复
注意,你在VB6中按F5运行的代码还是属于VB6.exe这个进程本身的
代码转载自:https://pan.quark.cn/s/c50a500cf555 在当今全球经济迅猛增长的背景下,通讯技术的持续进步使得个人之间的联系日益紧密,因此个人对其联系人信息的有效管理变得尤为重要。在此需求下,通讯录应运而生,各式各样的通讯录应用正不断为人们的生活带来便利。通讯录管理软件主要用于处理日常生活中的同学、朋友等联系人的信息编辑,帮助用户随时获取所需联系人的全部资料。这款通讯录管理系统操作简便,用户能够通过该系统轻松完成添加、检索、更新、移除等基本的管理任务。软件的操作界面通常可以隐藏在屏幕的边缘区域,当用户的鼠标移至该区域时,操作界面会自动显现,用户仅需输入关键词(如联系人姓名)即可快速找到所需的通讯录数据。 【Java课程设计-通讯录系统】是一款基于Java编程语言开发的个人通讯录管理工具,其目的是协助用户高效地处理和查找联系人信息。该系统是在JDK 1.7.0和NetBeans 6.9.1集成开发环境中构建的,提供了添加、检索、修改和删除联系人等核心功能,旨在为用户提供流畅的操作体验。 ### 一、需求分析 1. **基本功能**:系统需具备存储联系人姓名、电话、电子邮箱等核心数据的能力,并支持用户执行新增联系人、查找特定联系人、编辑现有联系人资料以及移除无用联系人等操作。 2. **搜索功能**:用户通过输入联系人姓名的关键字,系统能迅速定位到对应的联系人记录。 3. **界面友好**:界面设计需简洁明了,操作直观易用,软件窗口支持隐藏于屏幕边缘,并在鼠标接近时自动展示。 4. **数据保存**:系统必须实现联系人数据的持久化存储,确保程序关闭后数据不会丢失。 ### 二、任务分析 1. **主界面设计**:开发一个用户友好的主界...

1,453

社区成员

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

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