Access 2007、VBA、学校的小型项目和信任中心
一位朋友请求我帮助为大学的一个小院系建立一个 Access 数据库。 它跟踪一些动物的医疗信息。 问题是,为了使应用程序足够易于使用,我们必须编写一些 VBA 代码来将不同的表单粘合在一起。 当我们打开数据库(或数据库的新版本、更新版本)时,我们会看到 VBA 宏信任的小东西,并且我们很难弄清楚如何消除该警告。 我是一名开源开发人员,也是我所在组织的系统管理员,因此使用我维护的 CA 证书签署 rpm 包通常不是问题...
我朋友的部门使用装有 Novell 的 Windows PC,但他们的计算机支持部门已声明他们不为用户创建的应用程序提供任何支持(即提供由部门 CA 签名的证书),也不提供对计算机的管理员访问权限,以便我们可以更改信任设置。 他们也没有为用户编写应用程序的技能或专业知识。 (谢谢,伙计们,非常有帮助。)
此外,在我们整个大学中,用户被明确指示永远不要单击“是的,我信任这个”按钮。 为了她建立的这个小型访问数据库而对用户进行重新教育是一个问题,因为大约有 20 人将使用它来查找信息。
因为我正在帮助她,所以我倾向于使用存储在共享驱动器上的嵌入式数据库文件在 C# 中完成此操作,但这也属于“用户创建的应用程序”,并且我将无法运行安装程序,因为没有一个人拥有行政权利。
有什么方法可以解决每次有人打开此文件时都需要绕过宏的信任设置的问题吗? 我认为如果我们根本不使用宏而只使用 VBA 就可以了,但事实显然并非如此。
A friend asked for my help putting together an Access database for a small department at a university. It tracks medical info on some animals. The problem is that to make the application easy enough to use, we had to write some VBA code to glue different forms together. When we open the database (or a new, updated version of the database), we get the little VBA Macro Trust thingie, and we're having a hard time figuring out how to get rid of that warning. I'm an open-source developer and my organization's sysadmin, so it's usually not a problem for me to sign rpm packages with the CA Cert I maintain...
My friend's department uses Windows PCs with Novell, but their computer support department has stated that they don't provide any support for user-created applications (i.e. providing a certificate signed by the departmental CA) nor will they provide administrator access to the computers so that we can change the trust settings. They also don't have the skills or expertise to code the application for the users. (Thanks, chaps, mighty helpful.)
Additionally, in our entire University, users are explicitly instructed not to ever, ever click a 'yes, I trust this' button. Re-educating users for the sake of this little access database that she's put together is a problem, since about 20 people will be using it to look up information.
Since I'm helping her, my inclination would be to do it in C# with a embedded database file stored on a shared drive, but that also falls under "user created applications" and I wouldn't be able to run an installer since no one has administrative rights.
Is there any way to work around the need to bypass the trust setting for macros every time someone opens this file? I thought that if we didn't use macros at all and just used VBA it would work, but that's apparently not the case.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
自从您提到信任中心以来,您显然走在正确的轨道上。 我不使用 A2007,但 2 分钟的谷歌搜索找到了这两篇文章:
其中为 Access 提供的说明如下:
单击添加新位置。
在我看来,这应该可以解决您的问题,尽管它必须在每个用户的计算机上完成。
You're clearly on the right track since you mention the TRUST CENTER. I don't use A2007, but 2 minutes of Googling turned up these two articles:
The instructions given there for Access are:
Click Add new location.
Looks to me like that should take care of your problems, though it has to be done on each users computer.
您可能会在以下位置找到一些帮助:
http://msdn.microsoft.com /en-us/library/bb421308.aspx#OfficeAccess2007SecurityConsiderations_EnablingExecutableContentDatabases
具体来说:
You might find some help on:
http://msdn.microsoft.com/en-us/library/bb421308.aspx#OfficeAccess2007SecurityConsiderations_EnablingExecutableContentDatabases
Specifically: