在没有UAC提示的情况下从.NET应用程序执行进程

我有一个场景,我需要从我的.NET应用程序启动一个EXE,但我无法绕过弹出的UAC提示。 甚至在启动其他EXE之前就会触发提示 – 可能是在调用Process.Start 。 我使用此代码启动应用程序: var info = new ProcessStartInfo(path, “params”); info.Verb = “runas”; try { Process.Start(info); } catch (System.ComponentModel.Win32Exception) { // Person denied UAC escallation return false; } 两个EXE(我的应用程序和其他EXE)都在其清单中定义了: 如何在不触发UAC提示的情况下执行其他EXE,并使其具有与调用应用程序相同的访问令牌(因此它可以更改app文件夹中的文件等)?

ASP.NET计划删除临时文件

问题:我有一个ASP.NET应用程序,可以创建临时PDF文件(供用户下载)。 现在,许多用户在很多天内都可以创建许多PDF,这需要占用大量磁盘空间。 安排删除超过1天/ 8小时的文件的最佳方法是什么? 最好是在asp.net应用程序本身…

Open XML – 如何在docx文档中添加水印

我正在尝试获取现有文档,如果标题不存在,请创建一个,然后在对角线上标题为“DRAFT”的标题中添加水印。 我已经按照这里发布的示例进行了操作,如果标题已经存在,我会将代码添加到添加水印的位置。 当前的问题是,当我添加新标题,添加对文档的引用,然后将水印添加到标题时,文档已损坏,无法再在Word 2010中打开。 为了测试我一直在做以下事情:从页面本身创建一个新的word文档,在页面的主要部分使用“TestDoc”文本。 以“TestDoc.docx”保存到我的桌面并关闭该文件。 然后我从Visual Studio运行应用程序。 下面的代码将始终使其损坏。 如果我在文件中添加一个没有文字的标题,然后点击保存,水印将正确显示。 这是我到目前为止: using System; using System.Collections.Generic; using System.Linq; using System.Text; using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Vml; using DocumentFormat.OpenXml.Vml.Office; using DocumentFormat.OpenXml.Vml.Wordprocessing; using DocumentFormat.OpenXml.Wordprocessing; using HorizontalAnchorValues = DocumentFormat.OpenXml.Vml.Wordprocessing.HorizontalAnchorValues; using Lock = DocumentFormat.OpenXml.Vml.Office.Lock; using VerticalAnchorValues = DocumentFormat.OpenXml.Vml.Wordprocessing.VerticalAnchorValues; namespace DocumentWatermarkTest { class Program { static void Main(string[] args) { var […]

我可以在构建.net程序集时指定模块版本ID(MVID)吗?

我们有一些共享程序集,每晚都会自动构建。 如果没有对源进行任何更改,我希望程序集二进制文件与以前的版本完全相同。 但是,程序集之间似乎存在细微差别。 我已经做了一些努力来确定两个版本之间的区别。 我使用ildasm生成il版本,并比较生成的文本版本。 唯一的区别(在IL中)是模块中的MVID(随机guid)。 一些谷歌搜索告诉我模块版本ID由编译器生成,因此可以确定构建源,即使其他所有内容都相同。 这个MVID在相同代码的构建之间创建了一个人工差异,并且对所得到的程序集进行了人工检查。 是否可以将MVID提供给C#编译器?

使用TextBox实时过滤ListBox

我试图用文本框中的文本过滤一个列表框,realTime。 这是代码: private void SrchBox_TextChanged_1(object sender, EventArgs e) { var registrationsList = registrationListBox.Items.Cast().ToList(); registrationListBox.BeginUpdate(); registrationListBox.Items.Clear(); foreach (string str in registrationsList) { if (str.Contains(SrchBox.Text)) { registrationListBox.Items.Add(str); } } registrationListBox.EndUpdate(); } 以下是问题: 当我运行程序时,我收到此错误: Object reference not set to an instance of an object 如果我点击退格键,我的初始列表就不再显示了。 这是因为我的实际物品清单现在减少了,但我怎样才能做到这一点? 你能为我指出正确的方向吗?

将位图转换为图标

我正在尝试将图像从Bitmap转换为Windows图标。 这是代码。 private void btnCnvrtSave_Click(object sender, EventArgs e) { Bitmap bmp = (Bitmap)picturePanel.BackgroundImage; Bitmap newBmp = new Bitmap(bmp); Bitmap targetBmp = newBmp.Clone(new Rectangle(0, 0, newBmp.Width, newBmp.Height), PixelFormat.Format64bppArgb); IntPtr Hicon = targetBmp.GetHicon(); Icon myIcon = Icon.FromHandle(Hicon); SaveFileDialog sfd = new SaveFileDialog(); sfd.Title = “Save Icon”; sfd.Filter = “Icon|*.ico”; sfd.ShowDialog(); FileStream fileStream = new FileStream(sfd.FileName,FileMode.OpenOrCreate); myIcon.Save(fileStream); fileStream.Flush(); […]

有没有办法将Console.Write的结果连续镜像到集合(数组,列表等)?

我有一个控制台程序,我想不断将Console.Write的结果镜像到一个集合,我可以实时查看它的尾部。 该集合可以是数组,列表等。 我假设我必须使用某种事件处理程序? 我不介意被指向第三方库的方向,例如NLog。 更新 我需要在内存中维护一个集合,它反映当前的控制台状态(然后我可以使用套接字发送到远程WinForms应用程序)。 除了详细信息之外,我想我可以用几行C#来做到这一点 – 我不想添加一个巨大的日志库而不需要它。

添加可选参数是否会更改方法签名,是否会触发方法缺少exception?

我们有几个引用库程序集的项目让我们调用“myUtil”,现在是几个项目中引用的方法之一, GetData(int p1, string p2, object p3, bool p4 = false); 现在,如果我改变上述方法, GetData(int p1, string p2, object p3, bool p4 = false, bool p5 = false); 我是否必须将“myUtil.dll”程序集更新为引用它的项目? 没有引用它我得到这个错误,这确实有意义,并在我更新引用时消失, 但我不能有效查找引用,它说你必须更新引用 System.MissingMethodException:找不到方法:’Void GetData(….

datagridview行单击

我有一个datagridview,它填充了来自db的数据,我需要这样做:当点击datagrid中的一行时,来自该行的数据的所有字段都将位于其他文本框或其他内容中。 怎么办? 提前致谢。

unit testing单身人士

我有一个包含统计对象引用的单例。 当我对使用该单例的程序运行几个unit testing时 – 测试之间持续的值。 我虽然当我在做Program.Main()时,所有这些都是在unit testing之间重新开始,但不知怎的,它会记住上次测试的结果。 如何编写将彼此隔离的unit testing(我不想要clean()函数 – 我希望它重新开始使用新的“一切”),