Office中国论坛/Access中国论坛

标题: 急求!如何用一个access程序打开另一个带密码的access程序? [打印本页]

作者: wwjf    时间: 2006-9-21 23:29
标题: 急求!如何用一个access程序打开另一个带密码的access程序?
要求直接在语句中添加密码如果密码是123应该加在哪里呢            Dim stAppName As String
            stAppName = "msaccess.exe ""E:\test\test0.MDB"""
            Call Shell(stAppName, 1)
或者上面方法不可以,要通过其它方法?



[此贴子已经被作者于2006-9-21 21:27:11编辑过]


作者: wwwwa    时间: 2006-9-22 00:06

            stAppName = "msaccess.exe ""E:\test\test0.MDB"" /pwd 123"

作者: wwjf    时间: 2006-9-22 00:32
标题: 感谢,但还是达不到目的!


出现的是组策略对话框,我想要的是程序文件密码,麻烦您了!
作者: wwwwa    时间: 2006-9-22 00:45
Set db = DBEngine.Workspaces(0).OpenDatabase(strPath, False, False, "MS AccessWD=123")
作者: wwjf    时间: 2006-9-22 02:00
标题: wwwwa大哥,您给个全面点的回复吧!
我比较菜,您指导的我不知如何用,麻烦您了!
作者: wwjf    时间: 2006-9-22 02:16
标题: 进一步说明!
access程序A(无密码)是个检测更新的小程序,程序B(有密码)是主应用程序,我想打开A后检测到新版本就更新后打开B程序(不是链接它的表),而且不想让用户输入B程序的密码(不是工作组密码,就是单纯的access密码),该如何实现?我就想知道打开B程序那段程序编码。麻烦您了!

[此贴子已经被作者于2006-9-21 18:18:13编辑过]


作者: wwjf    时间: 2006-9-22 02:40
标题: 谁能帮帮我啊!!!
谁能帮帮我啊!!!
作者: andymark    时间: 2006-9-22 04:37


    Dim Conn As New ADODB.Connection
    Dim Rs As New ADODB.Recordset
    Dim Password As String
    Dim Server As String
    Server = CurrentProject.Path & "\db19.mdb"     '定义数据库路径

    Password = "123"
    Conn = "rovider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Trim(Server) + ";Jet OLEDBatabase Password=" + Trim(Password) + ""
    Conn.Open
    Rs.Open "select * from Gy_Czygl", Conn, adOpenDynamic, adLockOptimistic
    Do While Not Rs.EOF
        Debug.Print Rs.Fields(0)
        Rs.MoveNext
    Loop
    Set Rs = Nothing
    Set Conn = Nothing

作者: wwjf    时间: 2006-9-22 04:53
标题: 非常感谢斑竹大人!
我先试试,不太懂
作者: wwjf    时间: 2006-9-22 05:20
标题: 我还是弄不明白,我把附件上传,麻烦您了!
B程序密码为 123
作者: andymark    时间: 2006-9-22 05:23
附件呢


作者: wwjf    时间: 2006-9-22 05:38
标题: 请看附件
附件:[attach]20489[/attach]

作者: andymark    时间: 2006-9-22 05:50
[attach]20491[/attach]

作者: wwjf    时间: 2006-9-22 06:13
标题: 先感谢再看,谢谢您!
打开A后也没有打开B呀?
作者: andymark    时间: 2006-9-22 07:10
OpenCurrentDatabase 方法

参阅应用于[url=mkMSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\2052\vbaac10.chm::/html/acmthOpenCurrentDatabase.htm#example]示例[/url]特性

使用 OpenCurrentDatabase 方法可以打开一个已有 [url=mkMSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\2052\vbaac10.chm::/html/acmthOpenCurrentDatabase.htm#]Microsoft Access 数据库[/url] (.mdb) 作为当前的数据库。

expression.OpenCurrentDatabase(filepath, Exclusive, bstrPassword)

expression      必需。返回“应用于”列表中的一个对象的表达式。

filepath     必需 String 型。[url=mkMSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\2052\vbaac10.chm::/html/acmthOpenCurrentDatabase.htm#]字符串表达式[/url],表示已有数据库文件的名称,包括路径名和文件名扩展。如果网络支持,也可以按以下形式指定网络路径:\\Server\Share\Folder\Filename



注释   如果没有提供文件名扩展名,则将 .mdb 追加到文件名后。



Exclusive     可选 Boolean 值。指定是否以独占 方式打开数据库。默认值是 False,该值指定以共享方式打开数据库。

bstrPassword     可选 String。打开指定数据库的密码。

说明

使用该方法可以从另一个应用程序中打开数据库,该应用程序通过自动化(以前称为 OLE 自动化)控制 Microsoft Access。例如,可以使用 OpenCurrentDatabase 方法从 Microsoft Excel 中打开 Microsoft Access 窗口中的罗斯文示例数据库。一旦通过另一个应用程序创建了 Microsoft Access 实例,则也必需创建新的数据库或指定要打开的特殊数据库。该数据库是在 Microsoft Access 窗口中打开的。



注释  使用 OpenAccessProject 方法打开一个已有 Microsoft Access 项目 (.adp) 作为当前的数据库。



在 Microsoft Access 窗口中,如果已经打开一个数据库又希望打开另一个数据库,在打开另一个数据库以前,可以使用 CloseCurrentDatabase 方法关闭第一个数据库。

Exclusive 参数设为 True 可以以独占方式打开数据库。如果忽略该参数,数据库将以共享方式打开。



注释  请不要将 OpenCurrentDatabase 方法与 ActiveX 数据对象 (ADO) 的 Open 方法或数据访问对象 (DAO) 的 OpenDatabase 方法混淆。OpenCurrentDatabase 方法在 Microsoft Access 窗口中打开数据库。ADO 的 Open 方法返回 Connection 对象变量,而 DAO 的 OpenDatabase 方法返回 Database 对象变量。两者均代表一个特定的数据库,但都不在 Microsoft Access 窗口中实际打开数据库。



示例

下面的示例通过“自动化”从其他应用程序中打开一个 Microsoft Access 数据库,然后打开一个数据库中的窗体。

可以在任何一个可以用作 COM 组件的应用程序的 Visual Basic 模块中输入这段代码。例如,可以从 Microsoft Excel、Microsoft Visual Basic 或 Microsoft Access 中运行下列代码。

当指向 Application 对象的变量超出范围时,它所表示的 Microsoft Access 实例也将关闭。所以,必须在模块级声明这个变量。<RE><CODE>' Include the following in Declarations section of module.

Dim app
作者: pyzl    时间: 2008-11-6 11:03
这正是我要的[:34]




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3