Tag: .net

如何确保所有数据都已物理写入磁盘?

据我所知,.NET FileStream的Flush方法只将当前缓冲区写入磁盘,但依赖于Windows的磁盘驱动程序和硬盘固件,这并不能保证数据实际上是物理写入磁盘。 是否有.NET或Win32方法可以给我这个保证? 因此,如果在调用此方法后一个纳秒时出现断电,我仍然可以确定一切正常吗?

使用文件系统目录结构填充TreeView

我是新的节点在这里.. :)我想出了这个算法,但它只显示父节点列表..像这样.. a a.txt b c c m n b o p etc… 我希望下一个节点将被放入上一个节点内的一个节点..所以它会像这样出现.. a a.txt b o p c m n etc… 我有一些想法,但我可以实现它代码.. :)任何帮助请.. private void ListDirectory(TreeView treeView, String path) { Stack stack = new Stack(); TreeNode DirFilesCollection = new TreeNode(); stack.Push(path); while (stack.Count > 0) { string dir = stack.Pop(); try { List […]

创建单实例WPF应用程序的正确方法是什么?

在.NET(而不是Windows窗体或控制台)下使用C#和WPF,创建只能作为单个实例运行的应用程序的正确方法是什么? 我知道它与一些叫做互斥的神话故事有关,我很少能找到一个不愿意停下来解释其中一个是什么的人。 代码还需要通知已经运行的实例用户尝试启动第二个,并且如果存在任何命令行参数,也可以传递。

使用AllocConsole和目标体系结构x86时没有控制台输出

我有一个WinForms项目,如果用户想要一个调试控制台,我会分配一个带AllocConsole()的控制台。 所有控制台输出都正常工作,目标架构设置为“任何CPU”,但当我将其更改为“x86”时,它不会输出任何内容( Console.Read()仍然按预期工作)。 如果我直接打开EXE,则输出有效。 看起来Visual Studio将其重定向到它自己的“输出”窗口。 我也尝试了这个答案,但它没有用,我也试过Console.SetOut(GetStdHandle(-11)) ,但也Console.SetOut(GetStdHandle(-11)) 。 将目标体系结构设置为“任何CPU”对我来说是没有选择的。 所以这是我的两个问题: 为什么只有当目标体系结构设置为x86时才会出现这种情况? 在Visual Studio中运行时如何输出到我的控制台?

.NET上的双精度问题

我有一个简单的C#函数: public static double Floor(double value, double step) { return Math.Floor(value / step) * step; } 计算更高的数字,低于或等于“值”,即“步数”的倍数。 但它缺乏精确性,如下面的测试所示: [TestMethod()] public void FloorTest() { int decimals = 6; double value = 5F; double step = 2F; double expected = 4F; double actual = Class.Floor(value, step); Assert.AreEqual(expected, actual); value = -11.5F; step = 1.1F; expected = -12.1F; […]

计算带宽

有没有办法我可以通过网络计算exe /应用程序的带宽(发送和接收的数据包)? 已经陷入了IPGlobalProperties , 和其他类….我想要一个应用程序收到的数据包发送…我已经检查了http://netstatagent.com/我需要类似的东西…… .net中有什么可以帮助我吗? 我的应用程序连接到Web服务以发送一些图像文件…并且还接收文件…

如何循环遍历C#中的所有枚举值?

这个问题在这里已有答案: 如何在C#中枚举枚举? 26个答案 public enum Foos { A, B, C } 有没有办法循环Foos的可能值? 基本上? foreach(Foo in Foos)

从.net 4 c#中取消阻止文件

是否有可能从ac#程序中取消阻止从Internet下载的文件。 浏览互联网我已经了解到,信息是在包含当前区域信息的(NTFS)文件的替代流中写入的(值3来自互联网并被解释为被阻止)。 是否有管理的可能性来清除或更改文件的区域信息(解除阻止),或者是否存在托管复制function来复制没有区域信息的文件? 如果没有,我如何处理PInvoke但不包括外部程序集(我不允许在当前项目中执行此操作)。

C#通过FTP下载所有文件和子目录

基本信息 我还在学习C#。 为了帮助自己,我正在尝试创建一个程序,它将自动将我的所有本地项目与我的FTP服务器上的文件夹同步。 这样无论我在学校还是在家,我总是可以使用相同的项目。 我知道像Dropbox这样的程序已经为我做了这个,但我想创造类似的东西,我会在一路上教给我很多东西。 问题 我迈向目标的第一步是从我的FTP服务器下载所有文件,子目录和子文件。 我已设法从以下代码的目录下载所有文件。 但是,我的代码只列出了主目录中的文件夹名称和文件。 子文件夹和子文件永远不会返回,也永远不会下载。 除此之外,服务器返回550错误,因为我正在尝试下载文件夹,就像它们是文件一样。 我已经在这上面了4个多小时了,但我找不到任何关于如何解决这些问题并让它发挥作用的东西。 因此,我希望你们能帮帮我:) 码 public string[] GetFileList() { string[] downloadFiles; StringBuilder result = new StringBuilder(); WebResponse response = null; StreamReader reader = null; try { FtpWebRequest request = (FtpWebRequest)WebRequest.Create(url); request.UseBinary = true; request.Method = WebRequestMethods.Ftp.ListDirectory; request.Credentials = new NetworkCredential(ftpUserName, ftpPassWord); request.KeepAlive = false; request.UsePassive = […]

将app.config文件重定位到自定义路径

是否可以将整个App.Config文件重定位到自定义路径? 配置文件与exe文件位于同一文件夹中似乎有点奇怪,Windows的新approcah保存了c:\ ProgramData和all中的所有程序设置。 我们的另一个要求是以编程方式指定在哪里找到app.config文件。 这样做的原因是我们从同一个exes生成不同的服务实例,并希望将每个服务的app.config存储在c:\ ProgramData \\下该服务的settings文件夹中。