设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 3021|回复: 13
打印 上一主题 下一主题

[其它] 關于getopenfilename的用法.

[复制链接]
跳转到指定楼层
1#
发表于 2003-11-1 01:31:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
花了一天時間調試一段語句...
結果居然是引用apd函數的getopenfilename的問題
(返回值多了一個空格,而錯誤提示又不是說文件名錯...,真是苦啊,,,)
真是....
一知半解真的要不得..
所以...
那位大俠把這個函數的詳細用法貼出來,參考一下啊,
我不勝感激...
(請不要只貼範例代碼...)
先謝了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
14#
 楼主| 发表于 2003-11-3 22:53:00 | 只看该作者
對了,打包時候發布
控件檔案在新安裝目錄下....
用currentproject.path,及referens可以新增
但對于api函數引用..
Declare Function GetComputerNameA Lib "kernel32" _
                                 (ByVal strBuffer As String, lngSize As Long) As Long
lib后面如果要用安裝目錄下的函數庫,該怎么引用
我試這,只能引用固定目錄下的...如:"d:\kernel32.DLL"等...
13#
发表于 2003-11-3 20:05:00 | 只看该作者
呵呵,方法三是有这个问题
正头疼也是这个问题
所以现在编写的数据库都只能打包发布啦
对着 引用 把一个一个的控件都加上,Access自己扫描的控件还经常会漏掉几个
而且 好像就是这个dlgCommon控件,安装的时候,如果机器已经有了,就会提示覆盖出错
只能选择 忽略

关注你的方法一ing....
12#
 楼主| 发表于 2003-11-3 19:22:00 | 只看该作者
多謝你費心了..
你這是應用控件實現的...
但是這樣移植性不好,萬一別人機子上沒這個控件,
豈不出錯了.如果自帶這個來引用..就比較好..
11#
发表于 2003-11-3 18:46:00 | 只看该作者
呵呵,写错了一点
上面取的是整个的路径
如果要取文件名的话,兔兔不知道可不可以直接用属性取,不过也可以用下面的方法实现
mefile= Right(Me.dlgCommon.FileName, Len(Me.dlgCommon.FileName) - InStrRev(Me.dlgCommon.FileName, "\"))

InStrRev返回一个字符串在另一个字符串中出现的位置,从字符串的末尾算起
right 就是从尾巴开始取符合要求的文件名
10#
发表于 2003-11-3 18:26:00 | 只看该作者
嘻嘻,前天也看了这个帖子,不知道自己理解的对不对,不敢回答
这里把我关于文件存取的实现写下来,不知道是不是你需求的功能!
首先引用  Microsoft Windows Common Controls 6.0  即(Mscomctl.ocx)
然后就可以在窗体中加入ActiveX控件  CommonDialog ,命名为 【dlgCommon】
VBA实现:

Dim tmpFileName As String, DBfile As String, Xpath As String
    Dim Response
   ‘使用iif,主要是如果选定的文件在"d:\"的话,会多了一个“\“,所以要去掉,否则会出错
    Xpath = IIf(Len(Application.CurrentProject.Path) = 3, Left(Application.CurrentProject.Path, 2), Application.CurrentProject.Path)
     
    DBfile = Xpath & "\dbsourcedb.mdb"
    Me.dlgCommon.CancelError = False
    Me.dlgCommon.ShowOpen
   ’这个就是取到文件名,不知道是不是ADAM想要得
    tmpFileName = Me.dlgCommon.FileName
    If Len(tmpFileName) > 0 Then
        Response = MsgBox("还原指定的备份文件将不可逆操作!!" & vbCrLf & "确认选定的备份文件正确么?", vbYesNo, "数据库还原")
        If Response = vbYes Then
            Kill DBfile
            FileCopy tmpFileName, DBfile
            MsgBox "数据库已还原为指定的备份文件!"
        Else
            MsgBox "还原操作已撤销!"
         End If
    'tmpFileName = IIf(InStrRev(Me.dlgCommon.FileName, "\") > 0, Right(Me.dlgCommon.FileName, Len(Me.dlgCommon.FileName) - k), Me.dlgCommon.FileName)
    Else
        MsgBox "未选定备份文件,还原操作已撤销!"
    End If
9#
 楼主| 发表于 2003-11-3 16:12:00 | 只看该作者
呵呵....
我就是問FindNorthwind怎么寫的...
還要麻煩你的....
8#
发表于 2003-11-2 07:42:00 | 只看该作者
Private Sub Command0_Click()

Dim strSearchPath As String
Dim strFileName As String
strSearchPath = "c:\"
   strFileName = FindNorthwind(strSearchPath)   '
MsgBox strFileName    路徑名+文件名

End Sub
我的意思是
作個按鍵button
執行上述指令
FindNorthwind 是公用模組(自製)


7#
 楼主| 发表于 2003-11-2 00:55:00 | 只看该作者
FindNorthwind
这个是什么函数,自制的还是ACCESS有的。。。没见过啊 。。。
6#
发表于 2003-11-1 20:07:00 | 只看该作者

Dim strSearchPath As String
Dim strFileName As String
strSearchPath = "c:\"
   strFileName = FindNorthwind(strSearchPath)   '
MsgBox strFileName    路徑名+文件名  



[此贴子已经被作者于2003-11-1 13:14:55编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 05:18 , Processed in 0.090926 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表