我们如何在用户运行时覆盖 EXE 文件? [英] How can we overwrite EXE files while users are running them?

查看:36
本文介绍了我们如何在用户运行时覆盖 EXE 文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

背景:

我们公司的内部用户在 10-20 个 Windows 终端服务器上运行我们的 .Net 程序.这可执行文件都存储在运行 Windows 2003 的中央文件服务器上.一些终端服务器运行 Windows 2003,一些运行 2008.

Our companies internal user's run our .Net programs on 10-20 windows terminal servers. The executables are all stored on a central file server running windows 2003. Some of the terminal servers are running windows 2003 and some are running 2008.

问题:

当我们发布一个程序的新版本时,我们重命名了可能被锁定的文件(EXE、DLL 等),然后我们将文件的较新版本复制到适当的位置.在我们开始引入 windows 2008 终端服务器之前,这一切都完美无缺.现在,如果 2008 WTS 之一上的用户正在运行该程序,那么这些文件就会以一种甚至无法重命名的方式被锁定.

When we release a new version of one of our programs we renamed the files that might be locked (EXE, DLL's, ect.), then we copy the newer version of the file to the proper location. This worked flawlessly until we started introducing windows 2008 terminal servers. Now if a user on one of the 2008 WTS is running the program, then the files are locked in such a way that they cannot even be renamed.

问题

  • 有没有办法重命名锁定的文件?

  • Is there a way to rename the locked file?

有没有办法禁用 2008 年的这项新功能,即在运行时锁定 EXE 文件?

Is there a way to disable this new feature of 2008 that is locking the EXE files while they are being run?

有更好的解决方案吗?

推荐答案

我们的问题原来是因为 Windows 文件共享中的一项新功能称为机会锁定."当两台服务器都是 2008 时,目前无法关闭此功能.

Our problem turned out to be because of a new feature in windows file sharing called "Opportunistic Locking." It's currently impossible to turn this feature off when both servers are 2008.

我们目前正在与 Microsoft 合作寻找其他解决方案并进行调查.目前倾向于使用 DFS.

We currently have a case open with Microsoft looking for other solutions and work a rounds. Leaning towards using DFS at the moment.

这篇关于我们如何在用户运行时覆盖 EXE 文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆