Winapi 从access外部确定链接的msaccess.accdb文件的位置

Winapi 从access外部确定链接的msaccess.accdb文件的位置,winapi,ms-access,installation,Winapi,Ms Access,Installation,我正在为一个基于msaccess的应用程序编写更新程序,该应用程序具有多个链接的.accdb文件,这些文件可能位于硬盘上的不同位置。我们需要定期将旧的.accdb替换为新的,但不一定知道它们在哪里,因为客户可以移动它们 由于更新程序是在访问代码之外运行的,所以我没有找到一种好的方法,可以通过编程确定所有链接的.accdb文件的位置,只要前面有一个文件 是否从msaccess本身内部执行此操作的唯一方法?或者有人有更聪明的方法来确定这些文件的位置吗 提前谢谢 假设你知道 链接数据库 链接表的名称(

我正在为一个基于msaccess的应用程序编写更新程序,该应用程序具有多个链接的.accdb文件,这些文件可能位于硬盘上的不同位置。我们需要定期将旧的.accdb替换为新的,但不一定知道它们在哪里,因为客户可以移动它们

由于更新程序是在访问代码之外运行的,所以我没有找到一种好的方法,可以通过编程确定所有链接的.accdb文件的位置,只要前面有一个文件

是否从msaccess本身内部执行此操作的唯一方法?或者有人有更聪明的方法来确定这些文件的位置吗

提前谢谢

假设你知道

  • 链接数据库
  • 链接表的名称(在示例中为foo和bar)
  • 您可以通过ODBC或OleDB查询
    MSysObjects
    表,例如

    SELECT Database 
    FROM msysobjects
    WHERE 
         ForeignName in ("Foo", "Bar")
    
    也可能存在一种自动化方法,但这取决于更新程序是用什么编写的。

    假设您知道

  • 链接数据库
  • 链接表的名称(在示例中为foo和bar)
  • 您可以通过ODBC或OleDB查询
    MSysObjects
    表,例如

    SELECT Database 
    FROM msysobjects
    WHERE 
         ForeignName in ("Foo", "Bar")
    

    也可能存在一种自动化方法,但这取决于更新程序是用什么编写的。

    因为用户可以移动它们,所以我会通过自定义对话框直接询问用户。我不明白你怎么能动态地找到所有的人。你能在办公室之外做这件事吗?仅使用Windows搜索要替换的数据库?(假设您事先知道它们的名称)accdb文件是否始终位于本地系统上,或者是否也位于网络共享上?由于用户可以移动它们,我会通过自定义对话框直接询问用户。我不明白你怎么能动态地找到所有的人。你能在办公室之外做这件事吗?仅使用Windows搜索要替换的数据库?(假设您事先知道它们的名称)accdb文件是否始终位于本地系统上,或者它们是否也位于网络共享上?这正是我想要的,谢谢您的提示,先生:-)这正是我想要的,谢谢你的提示,先生!:-)