草庐IT

.net - 如何告诉 Windows 预取文件?

这个问题在这里已经有了答案:Whatisfadvise/madviseequivalentonwindows?(3个答案)关闭9年前。我的程序预先知道它将在未来访问某些(许多/大)文件或目录。是否有预期的机制将此信息传递给Windows,以便它可以将这些信息加载到缓冲区中?还是我必须自己在后台线程中打开文件?

windows - Git:请告诉我你是谁

我在Windows的GitGui中打开了我的存储库,然后按下提交。我得到了Unabletoobtainyouridentity:Pleasetellmewhoyouare[...]fatal:unabletoauto-detectemailaddress(got'foo@int123123.(none)')我在哪里匿名了电子邮件地址。但是,我已经使用git控制台(适用于Windows)全局设置了电子邮件地址。为了检查,我将自己引导到存储库文件夹并输入gitconfig--list输出是user.name=myNameuser.mail=myMail再次匿名,其中myMail严格来说不是

windows - 是否有 Windows API 调用可以告诉我是否在 64 位操作系统上运行?

是否有WindowsAPI调用可以告诉我是否在64位操作系统上运行?我有一些遗留的c++代码调用GetVersionEx来填充OSVERSIONINFO结构,但它只告诉我(AFAIK)操作系统(Vista、V7等),而不是处理架构。我可以通过简单地查找“C:\ProgramFiles(x86)...”的存在来解决这个问题,但这看起来很难看。我确定必须有一个API来返回此信息。 最佳答案 IsWow64Process可能正是您正在寻找的。 关于windows-是否有WindowsAPI调用

windows - 告诉故事内存碎片的迹象(而不是内存泄漏)?

首先我意识到泄漏会导致内存严重碎片化,但请耐心等待。使用WinDbg并附加到进程:使用!heap(或另一个WinDbg命令),如果我正在处理内存碎片而不是泄漏,我应该期待什么?例如,我可以使用“!heapstat”和“!heapstat-hhandle”来归零产生泄漏的代码;但是在这些相同的返回值中是否有暗示碎片化的东西?XP和Vista之间的内存分配是否发生了根本性变化?特别是与DLL和其他库加载有关?我们一直只在XP上开发,所以我不熟悉Vista,但事实证明,当我们在Vista上安装相同的二进制文件时,我们在XP上看到的某些内存问题就会消失。谢谢! 最佳

windows - 我怎样才能告诉 Windows XP/7 在我的代码的特定段期间不要切换线程?

我想阻止WindowsXP/7在后台线程中运行的代码的时间关键部分进行线程切换。我很确定我无法创造一种我可以保证不会发生的情况,因为系统驱动程序等的优先级更高的中断。但是,我想降低那部分线程切换的可能性我的代码尽可能少。是否有任何创建线程标志或WindowAPI调用可以帮助我?一般技术技巧也很受欢迎。如果有一种方法可以在不必将线程优先级提高到实时关键的情况下完成此操作,那就太好了,因为如果我这样做的话,我担心会给用户带来系统性能问题。更新:在看到对我的原始帖子的第一批回复后,我添加了此更新。提出这个问题的具体应用与实时音频流有关。我想尽我所能消除每一点延迟。在对我的原始设计进行编码后,

c# - 如何告诉nuget将包资源文件添加为链接,而不是将它们复制到项目目录中

简介(如何将资源打包成nuget包)要将一些资源文件打包到nuget包中,通常会执行以下操作。将所有资源文件放入nuget包的content\目录下。这将由.nuspec文件中的以下行指定:现在,当这个nuget包安装到AnotherProject时,会出现以下文件结构:Solution.slnpackages\Project.1.0.0\content\js\script.js//theoriginalresourcefileAnotherProject\js\script.js//aphysicalcopyAnotherProject\AnotherProject.csproj//

c# - Visual Studio 可以告诉我哪个引用引发了 NullReferenceException 吗?

我正在为MVC网络应用程序编写单元测试,并且我一直收到空引用异常,因为模拟测试对象仅被部分初始化。我知道哪一行抛出异常,它看起来像这样:returnSupervisor.RegistrationInformation.Registrations.Any(r=>r.RegistrationCountry.IsUSAOrCandada()&&(!DatesWorked.Start.HasValue||r.RegistrationDate=DatesWorked.End.Value)&&//...那里有很多引用资料,其中任何一个都可能是问题所在。但是,NullReferenceExcepti

c# - VS 告诉我添加对一个看似无关的程序集的引用。如何找出原因?

我创建了一个新的单元测试项目来测试我的NHibernate映射。NHibernate映射位于还包含EF实体的项目中。在我的单元测试中,我只使用甚至没有对EntityFramework的间接引用的类型,但是,当我编译单元测试项目时,我仍然收到以下错误:Thetype'System.Data.Objects.DataClasses.IEntityWithRelationships'isdefinedinanassemblythatisnotreferenced.Youmustaddareferencetoassembly'System.Data.Entity,Version=3.5.0.0

c# - 我能以某种方式告诉 Resharper ViewModel 的类型吗?

我们在不同的程序集中有Views和ViewModels。View的程序集具有对VM的引用。(有时我们需要隐藏代码)。ViewModel的DataContext是在代码中设置的,而不是在XAML中。因此,无论是VS还是Resharper都无法像智能感知那样提供帮助,Resharper也会给出很多警告。我们是否可以在XAML注释中为Resharper设置任何指令,以表明我们打算将View与特定类型的VM一起使用?更新:不错blogpost作为已接受答案的补充。 最佳答案 我遇到了同样的问题,并通过使用XAML中的设计时支持在XAML编辑

c# - 如何告诉 Visual Studio 在特定异常时不要中断?

我有一种特殊类型的异常,我希望VisualStudio不中断并显示异常助手屏幕。本质上,我希望它只是让我的正常异常处理基础架构来处理它。异常是我编写的System.Exception的继承者,并且有源代码。任何抛出它的地方我都希望VS不捕获它,即仅抑制一次thrownewBlahException();是没有用的;在代码中。这是因为经常抛出异常,我不想单独抑制每个实例。以防万一,我使用的是VisualStudio2010Ultimate,Framework3.5SP1。 最佳答案 转到“调试”菜单并选择“异常”。选择添加并输入您的异