终端服务器中的 VB 6.0 启动“准备安装” 适用于非管理员用户的 Windows 安装程序

发布于 2024-07-14 06:06:40 字数 431 浏览 10 评论 0原文

这似乎是一个 IT 问题,但我问的大多数 IT 人员都无法帮助我。 我工作的地方有一个 Windows 2003 服务器,几个开发人员通过 RDP 连接。 我们降低了其中一些人的权限(他们是管理员)。 现在,当他们启动Visual Basic 6.0时,他们会看到Windows Installer“准备安装”对话框。 大约 2 分钟后它就会消失,但这很烦人而且浪费时间。 我尝试了一些方法,包括在 system32 和 dllcache 中重命名 msi.dll,让开发人员完全控制注册表和 c:\Program Files ,但似乎没有任何效果。

任何帮助,将不胜感激。

谢谢

纳尔逊·马尔莫尔

This may seem to be a IT question, but most IT people I asked couldn't help me.
Where I work we have a Windows 2003 server where several developers connect via RDP. We downgraded the privileges of some of them (they were admin). And now when they start Visual Basic 6.0, they get the Windows Installer "Preparing to install" dialog. It disappears after about 2 minutes, but it's an annoyance and a waste of time. I tried several things including renaming msi.dll in system32 AND in dllcache, giving the developers full control to the registry and to c:\Program Files, but nothing seems to work.

Any help would be appreciated.

Thanks

Nelson Marmol

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

心如荒岛 2024-07-21 06:06:40

我会尝试改变他们启动 VB 的方式。 创建指向 vb6.exe 的链接并使用它来代替安装程序创建的现有链接。

I would try changing the way that they start VB. Make a link to vb6.exe and use that instead of the existing link created by the installer.

我还不会笑 2024-07-21 06:06:40

在服务器上启动ProcessMonitor,为特定的过滤器设置过滤器用户登录,然后让他们正常登录。 这可能会向您显示尝试访问特定文件时哪些权限失败。

Fire up ProcessMonitor on the server, set up a filter for a particular user login, and then get them to login as normal. This might show you what permissions are failing when trying to access a specific file.

差↓一点笑了 2024-07-21 06:06:40

重命名/杀死 msi.dll 并不能解决此类问题的原因,这只是掩盖了问题。

通常有两个可能的原因:

  1. 终端服务器中的某些驱动器,非特权用户无法访问 - 有助于允许读取访问该驱动器根文件夹;

  2. 一些错误安装的组件(上次对我来说是mscomctl32.ocx),什么是discoverealble调查事件日志(虽然通常只记录丢失组件的GUID,但找到真正的文件丢失/不正确并不总是很容易 一些错误安装的组件(上次对我来说是mscomctl32.ocx),什么是discoverealble调查事件日志(虽然通常只记录丢失组件的GUID,但

Renaming/killing the msi.dll is not solution to cause of such problems, this just masks problem.

Usually there are two possible causes:

  1. Some drive in terminal server, inaccessible to unprivileged users - helps allowing read access to this drive root folder;

  2. Some incorrectly installed component (last time for me it was mscomctl32.ocx), what is discoverealble investigating eventlogs (although there is usually recorded only GUID of missing component, it is not always easy to find what real file is missing/incorrectly registered).

浮华 2024-07-21 06:06:40

此处提供的解决方案均未解决该问题。 感谢您的帮助。 经过更多研究后,我在一篇文章中找到了这个步骤,这解决了问题:
1) 进入C:\Windows\System32文件夹,查找msi.dll。

2) 将 msi.dll 重命名为任何其他名称。

3) 进入C:\Windows\System32\dllcache文件夹,并重命名msi.dll

如果您没有执行此步骤,System32文件夹中的msi.dll将自动重新创建。

如果您找不到此 dllcache 文件夹,您可能需要更改文件夹选项中的属性。

在 Windows 资源管理器中 --> 转到“工具”菜单 --> 选择文件夹选项--> 单击“查看”选项卡 --> 取消选中“隐藏受保护的操作系统文件(推荐)”选项。

4)启动VB6,现在您可以启动VB6而不会收到错误消息。

5) 将System32文件夹和dllcache文件夹中的文件重命名为msi.dll

None of the solutions provided here fixed the problem. Thanks for your help. After some more research, I found this steps on an article and this fixed the problm:
1) Go to C:\Windows\System32 folder, and look for msi.dll.

2) Rename the msi.dll to any other name.

3) Go to C:\Windows\System32\dllcache folder, and rename msi.dll too.

If you didn't do this step, the msi.dll in System32 folder will automatically be recreated.

If you couldn't find this dllcache folder, you may need to change a property in the Folder options.

In Windows Explorer --> Go to Tools menu --> Select Folder Options --> Click on View tab --> Uncheck the option "Hide protected operating system files (Recommended)".

4) Launch VB6, and now you are able to launch VB6 without getting the error message.

5) Rename the file to msi.dll in System32 folder and dllcache folder.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文