草庐IT

c# - MSI 和 EXE 安装程序有什么区别,我应该选择哪个?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Whatarethespecificdifferencesbetween.msiandsetup.exefile?我正在为我的项目(C#)的新版本开发安装程序。以前,我用过InnoSetup创建用于在工作场所的其他计算机上安装我的项目的.exe文件。不过,在阅读一些教程时,我遇到了WindowsInstallerXML,它使用XML文件构建.msi安装程序。我的项目将在所有员工都可以访问的网络共享上可用,以便他们可以安装软件(我目前也在开发更新检查器).exe和.msi安装程序之间的主要区别是什么?为什么我要

c# - 如何使用 ngen.exe 编译以及如何运行生成的 native 代码?

我想为特殊目的使用ngen命令行编译C#程序。所以我在VS2010中创建了一个控制台应用程序并将其命名为ngentest。在vs2010\projects\ngentest\bin\debug中创建名为ngentest.vshost.exe的文件。我在VS2010命令提示符中使用此文件作为ngen命令参数,如下所示:ngen"c:\documents\vs2010\projects\ngentest\bin\debug\ngentest.vshost.exe"但是当我这样做时,我无法收到PublicKeyToken并且我在任何地方都找不到任何程序集!如果创建了我的程序集,它在哪里?我怎

c# - 如何在 ASP.NET Core 1.0 RC2 中将实例注册到 ServiceCollection

我正在将我的Web应用程序从ASP.NETCoreRC1迁移到RC2。在RC2中,IServiceCollection不再有AddInstance方法。如何注册配置?这是在RC1中是如何完成的publicclassStartup{publicIConfigurationConfiguration{get;set;}publicvoidConfigureServices(IServiceCollectionservices){//AddInstancedoesn'texistservices.AddInstance(Configuration);..}} 最佳

c# - 如何保护 .Net exe 免遭反编译/破解

我真的很难过,因为几天前我们推出了在.Net4.0(桌面应用程序)中开发的软件。3天后,它的破解在互联网上可用。我们试图保护软件不受此影响,但不知何故人们逃脱了破解。这是场景:当应用程序第一次启动时,它会与Web服务器通信并检查用户传递的凭据。如果凭据正确,软件会将值保存在注册表中,将MachineID发送回服务器并将其存储在数据库中。现在,黑客已经用“returntrue;”代替了服务器通信。声明(我用TelrikJustDecompile检查过)。并且他已经将破解的软件上传到了互联网上。现在,以下是我的问题:1-如何确保.Net应用程序不会被破解?2-黑客现在知道我的代码,因为他做

c# - SignalR 在 ASP .Net 5 RC-1 中不工作

我似乎无法让SignalR3在从Beta8升级的ASP.Net5RC-1上运行。我为SignalR尝试了最新的RC1包,但遇到了以下问题。我尝试了"Microsoft.AspNet.SignalR.Server":"3.0.0-rc1-15810"包services.AddSignalR();导致以下错误:Thetype'IServiceCollection'isdefinedinanassemblythatisnotreferenced.Youmustaddareferencetoassembly'Microsoft.Extensions.DependencyInjection.Ab

c# - XmlSerialization 和 xsi :SchemaLocation (xsd. exe)

我使用xsd.exe生成了一个用于读取/写入GPX文件的C#类。如何让生成的XML文件包含xsi:schemaLocation属性例如。我想要以下但xsi:schemaLocation总是丢失 最佳答案 将其添加到生成的C#类中:[XmlAttribute("schemaLocation",Namespace=XmlSchema.InstanceNamespace)]publicstringxsiSchemaLocation="http://www.topografix.com/GPX/1/1"+"http://www.topogr

c# - 使用 Owinhost.exe 运行 OWIN Web 服务或控制台应用程序有什么区别

我开始开发新的Web应用程序并考虑使用OWIN。我无法从任何文档中解决的一件事是,将C#应用程序创建为控制台应用程序并从其exe文件启动它运行,或者将项目创建为类库/dll,以及使用OwinHost之间有什么区别.exe启动它。运行Owinhost.exe来启动该进程是否比将其作为控制台应用程序运行更有优势? 最佳答案 OneofthecomponentsincludedintheMicrosoftOWINcomponentsisthelightweight,console-basedOwinHost.exe.Thishostfin

c# - 针对 csc.exe 中的特定框架版本

如何通过命令行调用为csc.exec#编译器指定目标框架版本(例如,没有.csproj文件并且不通过MSBUILD引擎)?例如,使用C#3.0csc.exe编译器,如何编译为针对2.0.net框架的IL? 最佳答案 在C#3编译器的特定情况下,只要您不使用任何不在.NET2.0中的程序集或类型,就没有问题-IL是相同的(与目标相反1.1,例如)。除此之外,您还可以使用/noconfig/nostdlib,然后显式引用.NET2.0程序集(例如在c:\Windows\Microsoft.NET\Framework\v2.0.50727

c# - 如何使用 xsd.exe 在 C# 中生成列表而不是数组

我有一个XML架构.xsd文件,并使用xsd.exe工具生成包含所有C#类的文件。如果我在XML标记中有一个元素序列,那将在C#中用数组表示。失败是显而易见的。如何生成列表而不是数组?我想使用列表而不是类中的固定大小数组。Book[]books=newBook[someFixSize];Listbooks=newList();我看到了一些关于此的较旧(非常老)的问题,但没有一个提供令人满意的解决方案:/这是最新的有用提示:http://www.stefanbader.ch/xsdcsarr2l-exe-refactor-xsd-array-to-list/

c# - 从 64 位 exe 访问 32 位 DLL 的方法

我有一个项目必须在64位模式下编译和运行。不幸的是,我需要调用仅在32位模式下可用的DLL,因此我无法将所有内容都放在一个1VisualStudio项目中。我正在努力寻找将32位DLL包装在其自己的exe/服务中并从我的64位应用程序发出对该exe/服务的远程(尽管在同一台机器上)调用的最佳方法。我的操作系统是Win7Pro64位。此32位进程所需的调用是每秒几十次,但数据量很小。这是一个实时图像分析应用程序,因此尽管数量很少,但响应时间至关重要。大量发送/接收单个原语。理想情况下,我会托管一个WCF服务来容纳这个DLL,但在64位操作系统中,不能强制该服务以x86运行!Source.