我想在Windows服务中的网络驱动器上映射一个清晰的视图。
我试过用net use
命令,但它没有正常工作。如何在Windows服务中为Clearcase View映射网络驱动器?
回答
你应该能够比一个used when paths are too long,这是subst
运行相同类型的命令:
subst X: c:\path\to\my\View # for snapshot view
subst X: M:\myView # for dynamic view
为了映射视图到一个驱动器号。
这应该从服务中工作,提供:
- 您使用的Windows帐户(而不是“本地系统帐户”)
- 动态视图已启动(并在可见
M:\
MVFS
安装点驱动)
我希望这种方法是有效的,但它确实从服务不确实;我已经非常强烈地殴打这个问题而无济于事。问题是双重的:
- 从Windows服务,能够映射驱动器对其他用户可见它与“互动“本地系统”帐户(默认值)为“登录”桌面“属性集。
- 为了能够与ClearCase交谈,Windows服务进程必须以具有ClearCase访问权的普通用户(例如典型的心房组)的身份“登录”。
所以(1)和(2)是相互排斥的,但你需要做到两者兼而不可。对于(2),大概你不能“与桌面互动”和地图驱动器的原因是因为你需要一个登录会话/令牌,映射驱动器必须存在才能工作 - 关联的每用户会话 - 但是服务需要能够在没有“会话”/令牌存在的情况下运行无头(无人登录)。
注意的是,这样的Rational BuildForge解决了这个对ClearCase是通过产生一个全新的子过程仅允许其服务交谈的ClearCase:
还要注意, “登录会话”由唯一的标识符标识;这意味着即使您有一个作为您想要的用户(域\ fred)运行的进程可以访问ClearCase,也可以从那里产生一个新进程,因为同一用户(domain \ fred)可能没有相同的会话令牌默认情况下,取决于它是如何创建的(即CreateProcess()vs CreateProcessAsUser()vs CreateProcessWithLogonW()),这使得处理你无法控制的工具变得更加困难。为了证明这一点,请尝试从命令提示符运行'runas/user:“cmd/k \”net use \“”',您将看到所有网络驱动器列为“不可用”(!!)。
这是可能的(虽然明确不建议微软),以极大的努力,让这一切工作,如果你能以某种方式设法在经常登录从中获取他们的会话令牌的用户,如所描述在这里:
starting a UAC elevated process from a non-interactive service (win32/.net/powershell)
否则,你就必须像BuildForge不会效仿。
另见:
对于这类问题,我通常使用CI服务器运行到它(CC.NET /哈德森/ TeamCity)作为Windows服务运行。我必须做的是确保在真正的“工作”开始之前的某个地方,我编写了一种映射网络驱动器的方法,方法是在运行时重新映射网络驱动器或将M:\映射到带有subst的可用驱动器盘符(非常乏味),正如VonC所描述的那样,这不是持久的(即使你使用'net use/persistent:yes'),这也是我猜你也希望得到的。
- 1. 如何从Windows服务映射网络驱动器?
- 2. 映射网络驱动器
- 3. 映射网络驱动器
- 4. 如果通过服务映射网络驱动器不可用
- 5. 在Windows 7中映射网络驱动器
- 6. 从网络服务器复制目录到映射的网络驱动器
- 7. C# - 从Web服务映射网络驱动器
- 8. 映射要由服务使用的网络驱动器
- 9. 如何在C#中获得网络映射驱动器VolumeLabel?
- 10. 如何在Python中刷新网络驱动器映射
- 11. 映射网络驱动器C#编程在Windows 10
- 12. Tomcat6作为Windows服务不承认映射的驱动器
- 13. 如何在批次内映射网络驱动器
- 14. 使用WIX工具集映射网络驱动器
- 15. 通过网页映射网络驱动器
- 16. 我如何映射网络驱动器与用户凭证
- 17. 如何获得可用的网络驱动器映射?
- 18. 我如何通知IIS有一个网络映射驱动器
- 19. 仅在连接到域时映射网络驱动器
- 20. Windows服务和Dll在网络驱动器
- 21. 映射网络驱动器:“net.exe USE”vs WshNetwork.MapNetworkDrive?
- 22. 映射驱动器,然后VB Windows服务使用它
- 23. 从IIS7托管的wcf服务访问映射的网络驱动器
- 24. 如何在Windows索引服务中定义网络驱动器的作用域?
- 25. 使用Delphi映射网络驱动器没有WNetAddConnection2
- 26. 映射网络驱动器无法访问使用WMI
- 27. 无法访问映射的网络驱动器
- 28. 防止访问映射的网络驱动器
- 29. 使用Java的映射网络驱动器未连接
- 30. 如何在C++中查找映射网络驱动器的IP地址?
使用您的帐户映射驱动器仍然在W7下工作吗?我还没有做到这一点。 – 2010-02-24 09:23:27
@保罗:不确定。我现在正在工作,所以我使用Windows XP。另外ClearCase尚不支持*正式* W7。 – VonC 2010-02-24 09:37:16
@VonC:非常真实,很好。但我认为W7支持现在即将推出,所以这是值得考虑的事情(除非该系统的生命周期内该盒子可以专用于XP)。 – 2010-02-24 09:42:36