Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access 如何在MS Access中创建更新前端的批处理文件?_Ms Access_Batch File_Module_Vba - Fatal编程技术网

Ms access 如何在MS Access中创建更新前端的批处理文件?

Ms access 如何在MS Access中创建更新前端的批处理文件?,ms-access,batch-file,module,vba,Ms Access,Batch File,Module,Vba,我一直在寻找一种简单的解决方案,以便在服务器上对前端副本进行更改时部署和替换MS Access数据库的前端。我在internet上只找到了一个解决方案,可以实现这一点,但我无法在网络上部署多台计算机,因为文件地址不可避免地是硬编码的 根据我的阅读,我考虑的另一种方法是创建一个批处理文件,将客户端计算机上的前端与服务器上的前端进行比较,如果不同,则将客户端的前端替换为服务器的前端。(我更喜欢这种方法) 问题是我不知道如何做到这一点,而且我还没有找到任何地方可以修改以满足我的目标。老实说,我以前从未

我一直在寻找一种简单的解决方案,以便在服务器上对前端副本进行更改时部署和替换MS Access数据库的前端。我在internet上只找到了一个解决方案,可以实现这一点,但我无法在网络上部署多台计算机,因为文件地址不可避免地是硬编码的

根据我的阅读,我考虑的另一种方法是创建一个批处理文件,将客户端计算机上的前端与服务器上的前端进行比较,如果不同,则将客户端的前端替换为服务器的前端。(我更喜欢这种方法)


问题是我不知道如何做到这一点,而且我还没有找到任何地方可以修改以满足我的目标。老实说,我以前从未创建过批处理文件,但我准备在任何可能的帮助下学习这一点。:)

您可以在Access中轻松创建版本检查器。我有一个可以查看表单的Description属性:

FileName = Nz(DLookup("Value", "CMDB_tblScreenOptions", "OptionName = 'VersionFilename'"))
CurrentVer = CurrentDb.Containers("Forms").Documents("CMDB_frmScreenAbout").Properties("Description")
在本例中,文件名保存在一个表中,该表的属性设置为隐藏。它存储了我保存版本的文本文件的路径。然后它将打开该文本文件:

Open FileName For Input As #1
Do While Not EOF(1)
    Input #1, FileVer
Loop
Close #1
如果CurrentVer=FileVer,则一切正常。如果没有,它将抛出一个BAT文件,然后关闭数据库。BAT文件有一个暂停行,用户有时间允许DB关闭,然后在他们“按“回车”继续…”后,它从网络上获取当前版本并将其安装到用户的计算机上


这听起来有点复杂,但一旦你弄明白了,你最终会在你创建的每个应用程序中使用它,并且很容易合并。

我查看了你提供的链接中的代码,这应该很好。我不理解你说“文件地址是硬编码的”的问题——除非你允许客户机将数据库放在他们选择的任何文件夹中。在任何情况下,您都可以修改代码以使其正常工作。您可以使用所需的任何路径创建自己的Update.mdb文件。几年前,我在VB6.0中创建了一个版本控制包,用于在HQ(主副本)和远程站点之间维护指定程序的版本。然后在现场,在服务器和工作站之间。你可以让它工作。但是如果你真的想要批量方法。。。下面是一个示例:将FileVer存储在文本文件而不是数据库中有什么好处?@Johnny很高兴得到您的帮助,我从您为他人发布的答案中获益匪浅。然而,我觉得很愚蠢,除了第一行和部分第二行之外,我不理解你答案的应用。我在上面的问题中使用了这句话,但我被卡在了点子上。HansUp-不是我们所有的应用程序都使用共享数据库,我只是觉得开发一个到处都能工作的系统比使用两个独立的系统更容易。Kefash-您确定检查空字符串是正确的做法吗?您是否尝试检查空值?我没有使用Dir()函数,所以我不能确定它为什么不能正常工作。我找到了问题所在。存储在服务器上的新客户端版本和从客户端启动的版本都是相同的。我做了调整,效果很好。我仍然对你使用的方法很感兴趣。如果不太麻烦的话,你能给我寄一份参考资料或一份样本,让我试着把它融入到我已经拥有的东西中去。再次感谢Bones