Articles of .net

文件被复制到SysWOW64而不是System32

我的应用程序运行时必须将psTool实用程序复制到System32文件夹。 我在64位Windows 7上,每当我尝试通过File.Copy将exe复制到system32位文件夹时,exe总是被复制到SysWow64。 当我在destFile上放置一个断点时,path显示为C:\Windows\System32但文件不会进入(进入sysWow64)。 我已经尝试了Special Folder SystemX86 ,但文件再次进入sysWOW64。 string sourceFile = "C:\bin\Debug\somexe.exe" string destFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), utilityName); File.Copy(sourceFile, destFile, true); 任何build议我在这里失踪? 编辑 正如答案中所指出的那样,正在发生文件系统redirect。 我正在使用64位操作系统上的控制台应用程序的Visual Studio的默认设置开发应用程序。 我不确定在编译时必须保留哪些设置/开关,以便应用程序可以在32位和64位操作系统上运行。 基本上,它应该只是设置将文件复制到System32而不pipe它是什么位的操作系统。 在后面的程序中,我必须通过命令行访问psTools实用程序,如果将其放在SysWOW64中,命令行不可用。 如果我进行更改,要使用SysWOW64的32位cmd.exe,这将再次是64位平台特定的,我不想select。 任何解决scheme,可以使应用程序运行在32位和64位没有问题? 我是否必须修改代码(如何?)还是必须修改此控制台应用程序项目的某些属性(哪些属性)?

如何使.NET应用程序“大地址感知”?

假设我已经使用/ 3GB开关启动了32位Windows Server,我怎样才能使.NET应用程序使用额外的地址空间?

如何在.NET中加载插件?

我想提供一些在我的软件中创builddynamic加载插件的方法。 典型的方法是使用LoadLibrary WinAPI函数加载一个dll并调用GetProcAddress来获取指向该dll内部函数的指针。 我的问题是如何在C#/ .Net应用程序中dynamic加载插件?

定义执行程序的工作目录(C#)

我目前正试图从一个特定的文件夹中启动一个可执行文件。 我有下面的代码足够奇怪地崩溃应用程序: Process p = new Process(); p.StartInfo.WorkingDirectory = "dump"; p.StartInfo.FileName = s; p.Start(); 我debugging它,它是说它无法find文件启动,但文件/文件夹defintly存在,是我的语法不好? 下面的代码工作,但工作directroy没有定义,所以它找不到可执行文件 Process.Start(@"dump\", s);

在.NET中,当你最小化程序时,垃圾回收器会被调用吗?

我用C#创build了一个程序。 该程序使用了大约60-70 MB的记忆。 但是,当我最小化这个程序时,它需要更less的内存,也就是只有10 MB。 当我最大化或回到该程序时,它使用了20 MB … 为什么会这样呢? 当你最小化程序时,垃圾收集器是否被调用?

SendKeys.send被阻止

我有C#应用程序使用Sendkeys.send发送文本到其他应用程序。 在Windows 7上执行一段时间后,Sendkeys停止响应并且不发送任何文本。 它从来没有发生在Windows XP上。 我怀疑反病毒,但是当我没有反病毒运行时也会发生。 任何想法可以导致它? 感谢您的帮助。

安装3.5之后安全地卸载.NET Framework 2.0和1.0?

我是Windows开发新手,我有一个问题。 我使用带Boot Camp的Mac在双引导下运行Windows,但是我有一个非常小的Windows分区(10 GB,因为由于磁盘使用情况,Boot Camp由于较大的分区而失败)。 安装Visual Studio 2008之后,我不断得到低磁盘空间警告,所以我想释放一些空间。 我可以从控制面板中看到,我安装了几个.NET Framework版本(1.0,2.0,3.5,各种服务包)。 我想知道,如果我已经安装了3.5,我可以安全地删除其他的。 谢谢。

无法findtypes或名称空间名称“ServiceController”

我想在C#中检查一个服务,我已经添加了System.ServiceProcess.dll 虽然我得到的错误: 错误2无法findtypes或命名空间名称“ServiceController”(您是否缺lessusing指令或程序集引用?)D:\ App \ Form1.cs 247 13 App 我的代码如下: private void button13_Click(object sender, EventArgs e) { ServiceController sc = new ServiceController("Spooler"); if (sc.Status == ServiceControllerStatus.Running) { MessageBox.Show("The service is running."); } } 我可能需要一个“使用”的声明?

呼叫被被叫方拒绝

我的应用程序在我的win 7 64位机器上工作正常。 我试图在不同的win 7 64位机器上运行winforms visual studio 2008 .NET C#应用程序,现在我得到这个错误: See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box. ************** Exception Text ************** System.Runtime.InteropServices.COMException (0x80010001): Call was rejected by callee. (Exception from HRESULT: 0x80010001 (RPC_E_CALL_REJECTED)) at Microsoft.Office.Interop.Excel.WorkbookClass.get_Worksheets() at EmailSalesVolumeSolution.WorkBook.OpenWorkBook() in C:\Users\agordon\Documents\Visual Studio 2008\Projects\SubversionRepository\Internal Application\EmailSalesVolumeSolution\EmailSalesVolumeSolution\WorkBook.cs:line 40 […]

我应该如何在Windows上创build自定义graphics控制台/terminal?

Windows控制台界面(认为cmd窗口)是给用户一个非常简单的GUI。 然而,处理渲染,用户input和滚动的效率水平非常高。 用于创build此接口的方法无疑与传统桌面GUI的方法完全不同。 我有兴趣为Windows创build自己的定制控制台/terminal,最好使用基于C#和.NET的技术(例如托pipe的GDI +或WPF)。 作为一个起点,我会非常热衷于重新创build标准的简单Windowsshell程序。 然后,我可以扩展的东西,并从那里添加function。 我正在寻找关于如何创build这样一个控制台UI的一般指导,但是一些特定的要点包括: 我应该使用什么样的渲染模型? 渲染循环? 部分更新(如WPF)? WinForms模型(不知道这是如何工作的)? 渲染模型中使用了什么样的caching? 字体是如何加载的,它们是如何渲染的? 他们是标准的TrueType字体,位图字体还是其他? 滚动如何有效地执行? 任何你认为可能是相关的! 事实上,对于内置的Windows控制台UI(甚至是优秀的LinuxterminalUI)如何执行这些操作(以及如何模拟它们)的任何解释都是理想的。 编辑:要清楚,我真的想完全从头开始。 基于像GDI +或WPF的graphics框架,但没有更多。