我的问题是,在某个地方,不知何故,只有零星的情况下,当我的testing套件运行时, Environment.CurrentDirectory被设置为C:windowsSystem32 。 一些testing依赖于当前目录,并因此而失败。
我在我的项目中做了一个find-all,并确认我的代码都没有设置该属性。 尽pipe我使用了大量的第三方库,但是我怀疑其中一个是修改当前目录。
我已经做了一些特别search当前目录切换到system32,但我已经空了。 有这种可能发生的一些常见原因吗?
另外一种类似的方法是空的,那就是:我怎样才能find罪魁祸首呢? 据我所知,当值改变时,我不能让Visual Studio在任何地方中断。 因为它是一个环境variables,在.NET库中,我不能在setter中设置断点。
在一个cpu上运行Java线程
windows – 无线控制台输出可能导致系统嘟嘟声?
如何扫描networking上存在的无线设备
使用适用于windows XP / 7的Metro UI开发应用程序
将XMLstring反序列化为对象错误:xml文档中存在错误(1,2)
我想过使用procmon或者什么,希望logging当前目录改变的时候,但是当它发生的时候不会暂停执行,所以我仍然不知道它发生了什么。
我只是在如何我可能会deBUGging这个损失。 有任何想法吗? 或者,我唯一的办法是将Environment.CurrentDirectory保存到全局只读字段中,并在我的代码中专门引用该字段,从而允许无论如何修改当前目录而不受惩罚?
单声道的pdfSharp
从windows日志查询给定数量的事件
Mono / Ubuntu – 冲突的定义
如何在windows CE设备上安装.Net Compact Framework
build立.NET COMInterop项目,而不先注册COM服务
首先,依靠外部资源进行单元测试是非常糟糕的做法。 当别人测试你的代码时,根据当前目录的单元测试可能会失败。
为什么不使用Microsoft Fakes来为Directory返回一个特定的值?
为了创建一个假的,在单元测试的参考,右键单击参考,然后单击“添加伪装大会”。
例如,如果您的单元测试依赖于当前日期,则可以使用以下代码生成另一个日期/时间:
ShimDateTime.NowGet = ()=> new DateTime(2012,12,21);
我建议阅读这篇文章。 这是一个非常高的价值: http : //www.dotnetcurry.com/showarticle.aspx?ID=963
总结以上是内存溢出为你收集整理的Environment.CurrentDirectory设置为system32; 我如何确定在哪里?全部内容,希望文章能够帮你解决Environment.CurrentDirectory设置为system32; 我如何确定在哪里?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)