Access VBA:Shell命令在一个特定数据库中被破坏
我在同一台计算机上打开了两个Access数据库。在其中一种情况下,在即时窗口中运行此操作可以按预期工作(打开记事本): 在另一个示例中,我得到了以下错误: 运行时错误“5”:过程调用或参数无效 我还没有想到任何shell命令能够在第二个数据库中成功运行。不管怎样,我都会犯那个错误 这是怎么回事?是否会有安全设置发挥作用?或者一个是旧版本 编辑-更多信息Access VBA:Shell命令在一个特定数据库中被破坏,vba,ms-access,Vba,Ms Access,我在同一台计算机上打开了两个Access数据库。在其中一种情况下,在即时窗口中运行此操作可以按预期工作(打开记事本): 在另一个示例中,我得到了以下错误: 运行时错误“5”:过程调用或参数无效 我还没有想到任何shell命令能够在第二个数据库中成功运行。不管怎样,我都会犯那个错误 这是怎么回事?是否会有安全设置发挥作用?或者一个是旧版本 编辑-更多信息 当我转到故障数据库中的Shell定义时,它转到VBA.Interaction.Shell 我获得了适用于Shell的正确IntelliSens
- 当我转到故障数据库中的
定义时,它转到Shell
VBA.Interaction.Shell
- 我获得了适用于
的正确IntelliSense工具提示Shell
- 我尝试了
和VBA.Shell“notepad.exe”
,但没有成功(同样的错误)VBA.Interaction.Shell“notepad.exe”
- 以下是在两个数据库中检查的引用:
- 反编译没有帮助
- 罪魁祸首是我们的防病毒软件<斯特朗>啊强>
为什么它在一个数据库中工作而在另一个数据库中不工作?有人告诉我,几年前,我的电脑对一个数据库而不是另一个数据库进行了防病毒例外
我建议遇到此问题的任何其他人检查其防病毒日志/策略。另外,从另一台具有不同策略的计算机上运行数据库可能会更快地揭示这个问题。在这种情况下,当我使用远程桌面登录到服务器时,我成功地调用了shell。罪魁祸首是我们的防病毒软件<斯特朗>啊强> 为什么它在一个数据库中工作而在另一个数据库中不工作?有人告诉我,几年前,我的电脑对一个数据库而不是另一个数据库进行了防病毒例外
我建议遇到此问题的任何其他人检查其防病毒日志/策略。另外,从另一台具有不同策略的计算机上运行数据库可能会更快地揭示这个问题。在这种情况下,当我使用远程桌面登录到服务器时,我能够成功地调用shell。只有两个想法:1。启动时是否执行任何代码?2.查看数据库的引用。可能有孤立的东西?可能在第二个数据库中重新定义了
Shell
函数。在即时窗口中的“Shell”处尝试按Ctrl+F2
以跳转到定义。或者显式地尝试VBA.Shell
,这将强制使用VBA库。@UnhandledException没有定义Autoexec宏-如果这是您的意思的话。有关引用,请参阅我的编辑。@4dmonster当我在出现故障的数据库中转到Shell
的定义时,它会转到VBA.Interaction.Shell
。只有两个想法:1。启动时是否执行任何代码?2.查看数据库的引用。可能有孤立的东西?可能在第二个数据库中重新定义了Shell
函数。在即时窗口中的“Shell”处尝试按Ctrl+F2
以跳转到定义。或者显式地尝试VBA.Shell
,这将强制使用VBA库。@UnhandledException没有定义Autoexec宏-如果这是您的意思的话。有关引用,请参见我的编辑。@4dmonster当我转到故障数据库中的Shell
定义时,它会转到VBA.Interaction.Shell
。
Shell "notepad.exe"