草庐IT

static-compilation

全部标签

c# - 一种自动化MS Office VBA代码 "Compile"函数的方法

通常,当我对VBA文件进行更改时,我喜欢编译它以确保我的更改不会破坏任何内容:但是在不同版本的office在不同的机器上编译会得到不同的结果,有时会编译,有时不会...东西likethis可能发生,或者maybethis.结果在每个版本的excel中都有各种thingscanbedifferent(不只是引用,尽管这是最常见的问题)。如何自动编译我的VBA代码?我希望能够在Excel、PowerPoint和Word等多种产品中执行此操作,我希望能够编译为32位和64位,包括2010、2013、2016等......更新1是的,这仍然是一个主要的痛点,现在我有一系列手动测试人员(人员)根

c# - Expression<TDelegate>.Compile 和垃圾收集

当我将表达式编译成可执行代码并获取委托(delegate)时-如果不再存在对该委托(delegate)的引用,代码是否会被垃圾收集?有这方面的文档吗?因为我在MSDN中没有找到任何有用的东西。 最佳答案 是的,代码可以被垃圾回收。当您对T的表达式调用编译时,代码将编译为DynamicMethod,并且那些有资格进行垃圾收集。确实在MSDN上没有说明,但您可以查看DLR中Expression.Compile的实现,这是.net4.0附带的内容:http://dlr.codeplex.com/SourceControl/changese

c# - Visual Studio 变得疯狂 : 'The directory name is invalid' error when trying to compile

出于一些非常奇怪的原因,我的VisualStudio2008在尝试编译C#项目时尝试将可执行文件的输出写入与可执行文件同名的目录,至少看起来这就是错误所在消息暗示。在我的任何项目上运行编译后,CSC.EXE报告以下编译器错误:Couldnotwritetooutputfile'D:\Projects\Examples\StringBuilderVsString\obj\Release\StringBuilderVsString.exe'--'Thedirectorynameisinvalid.'当我查看obj\Release或obj\Debug时,所有中间资源(如StringBuild

c# - 当我尝试重命名方法时,为什么 Visual Studio 告诉我有 "compiler generated references"?

我有一个名为FormattedJoin()的方法在名为ArrayUtil的实用程序类中.我尝试重命名FormattedJoin()只是Join()因为它的行为类似于.NET的string.Join()所以我认为使用相同的名称是有意义的。但是,当我尝试使用VisualStudio重命名该方法时,我收到此警告:Thismembermayhavecompilergeneratedreferenceswiththesamename.Refactoringthememberwillnotupdatethesereferences,whichmayintroducesemanticchangesa

c# - static关键字是什么意思?

我是C#初学者。我发现有两种方法可以编写代码并输出相同的结果。你能解释一下它们之间的区别吗?什么时候使用#1和#2?#1classProgram{staticvoidMain(){Programmin=newProgram();Console.WriteLine(min.isMin(1,2));Console.ReadLine();}intisMin(intvalue1,intvalue2){intMin;returnMin=Math.Min(value1,value2);}}#2classProgram2{staticvoidMain(){Console.WriteLine(isMi

c# - Lazy<T> 延迟加载错误 : A field initializer cannot reference the non-static field, 方法或属性

我第一次尝试使用延迟加载来初始化我的类中的进度对象。但是,我收到以下错误:Afieldinitializercannotreferencethenon-staticfield,method,orproperty.privateLazym_progress=newLazy(()=>{longtotalBytes=m_transferManager.TotalSize();returnnewProgress(totalBytes);});在.NET2.0中,我可以执行以下操作,但我更愿意使用更新的方法:privateProgressm_progress;privateProgressPro

c# - public static vs static public - 有区别吗?

sealedclassPI{publicstaticfloatnumber;staticPI(){number=3.141592653F;}staticpublicfloatval(){returnnumber;}}publicstatic和staticpublic有什么区别?它们可以按任何顺序使用吗?我将如何使用staticpublicfloatval()?类一初始化就执行吗? 最佳答案 没有区别。您可以按任一顺序随意指定它们。但是,我发现大多数开发人员倾向于使用publicstatic而不是staticpublic。

c# - "Edits were made which cannot be compiled"。在 vs2010 中选中零错误和启用并编辑并继续

我能够在Debug模式下编辑我的代码,但随后弹出显示错误Editsweremadewhichcannotbecompiled.Executioncannotcontinueuntilthecompileerrorsarefixed但错误列表为空,我已选中启用编辑并继续。我使用的是vs2010。清理重启也没有解决问题。 最佳答案 当您的工作区损坏时,可能会出现此问题。只需关闭VisualStudio,删除(或者最好先重命名).vs文件夹,然后再次启动VisualStudio。它甚至可以在VS2017中发生。

C# 4.0 : casting dynamic to static

这是一个分支问题,与我问的另一个问题有关here.我把它分开是因为它真的是一个子问题:我在转换dynamic类型的对象时遇到困难到另一个(已知的)静态类型。我有一个用于执行此操作的IronPython脚本:importclrclr.AddReference("System")fromSystemimport*defGetBclUri():returnUri("http://google.com")请注意,它只是更新BCLSystem.Uri类型并返回它.所以我知道静态类型返回的对象。现在在C#领域,我正在更新脚本托管内容并调用这个getter来返回Uri对象:dynamicuri=sc

c# - 使用 x :Static 指定时忽略 DataTemplate 键

我遇到了DataTemplate键的奇怪行为:当通过x:Type指定DataType,并且通过x:Static引用指定x:Key时,忽略x:Key。我编写了示例应用程序来说明它。XAML资源:C#:publicclassTestDto{}publicstaticclassDataKeys{publicstaticstringTestDtoKey="TestKey";publicstaticstringTestDtoKey2="TestKey2";publicstaticstringTestDtoKey4="TestKey4";}启动应用程序,在调试器中查看this.Resources.