德尔福:SecondsBetween(StrToDateTime('16/02/200911:25:34p.m.'),StrToDateTime('1/01/200512:00:00a.m.'));130289133C#:TimeSpanspan=DateTime.Parse("16/02/200911:25:34p.m.").Subtract(DateTime.Parse("1/01/200512:00:00a.m."));130289134它也不一致。有些日期加起来是一样的,即..TimeSpanspan=DateTime.Parse("16/11/201111:25:43p.m.
Delphi应用程序如何调用导出函数(非COM)dotNET程序集并让函数返回字符串?COM不是我的特定应用程序的可能解决方案。我可以控制通话的两端。到目前为止我尝试过的-Delphi客户端typeTStrProc=procedure(varx:widestring);stdcall;functionTryIt:string;varHandle:THandle;Proc:TStrProc;InData:widestring;OutData:widestring;beginHandle:=LoadLibrary('DelphiToDotNet.dll');ifHandle=0thenex
在delphi中,我可以像这样声明一个类型的类typeTFooClass=classofTFoo;TFoo=classend;此声明的C#等效项是什么? 最佳答案 您在C#中可以获得的最接近的是Type类型,它包含有关类型的元数据。publicclassA{}publicstaticintMain(string[]args){Typeb=typeof(A);}这不是完全相同的。在Delphi中,“其他类型的类型”本身就是可以分配给变量的类型。在C#中,“其他类型的类型”是一个System.Type实例,可以分配给System.Typ
以下Delphi程序根据nil引用调用方法并运行良好。programProject1;{$APPTYPECONSOLE}typeTX=classfunctionStr:string;end;functionTX.Str:string;beginifSelf=nilthenbeginResult:='nil'endelsebeginResult:='notnil'end;end;beginWriteln(TX(nil).Str);Readln;end.但是,在结构相似的C#程序中,将引发System.NullReferenceException,这似乎是正确的做法。namespaceCo
我已经有一段时间是Delphiholic了,最近我也在考虑学习一些C#,但是我有点“害怕未知”,我已经做了一些简单的应用程序作为测试驱动C#,我不得不承认我喜欢它,但是我不太喜欢这个IDE...这里所说的问题,如果其他走这条路的人会回答,我将不胜感激:作为一名Delphi开发人员,Delphi语言的“主要基本”变化是什么(基本是指基本——实用函数、流等),我习惯于将“系统、类、窗口”添加到不使用“使用System.XXX.YYY.ZZZ”,我试图在我的脑海中实现从Delphi到C#的部分平等,直到我看到Delphi与C#携手并进的地方等等......我希望问题很清楚,如果没有,请毫不犹
我的公司有一个大问题。我们在Delphi.NET中开发了一个包含超过1.000.000行代码的应用程序。因此,我们只能使用Delphi2007和.NET2.0。随着技术和用例的发展,我们需要迁移到另一个开发平台。到目前为止,我们尝试了几种promise将Delphi.NET转换为C#代码的工具-每个工具都有几个问题,例如错误的字符串索引(Delphi1C#0)或何时使用类型来声明数组边界。采用这种方法后,我们尝试反编译Delphi.NET程序集-从中返回的代码几乎不可读,并且有数百个调用Borland特定程序集的辅助函数。我已经考虑过自己编写一个转译器的可能性,但是Delphi的歧
我用单一方法编写了.Net3.5dll,供Delphi.exe调用。不幸的是,它不起作用。步骤:1.使用代码创建C#3.5dll:publicclassMyDllClass{publicstaticintMyDllMethod(inti){MessageBox.Show("Thenumberis"+i.ToString());}}转到AssemblyProperties-->AssemblyInformation并选中“MakeAssemblyCOM-Visible”使用RegAsm.exe注册我的dll这会抛出Delphi异常,表明它无法连接dll。从非托管代码启用C#托管dll的使
我如何在Delphi中使用类似Math.Round和MidpointRounding.AwayFromZero的c#?等同于:doubled=2.125;Console.WriteLine(Math.Round(d,2,MidpointRounding.AwayFromZero));输出:2.13在德尔福? 最佳答案 我相信DelphiRTL的SimpleRoundTo函数本质上是这样做的,至少如果FPU舍入模式是“正确的”。请仔细阅读其文档和实现,然后确定它是否足以满足您的目的。但请注意,设置像这样的单个舍入操作的舍入模式是使用全
我正在用Delphi编写一个多线程应用程序,需要使用一些东西来保护共享资源。在C#中,我会使用“lock”关键字:privatesomeMethod(){lock(mySharedObj){//...dosomethingwithmySharedObj}}在Delphi中我找不到任何类似的东西,我只找到了TThread.Synchronize(someMethod)方法,它通过在主VCL线程中调用someMethod来防止潜在的冲突,但这并不是我想要做的.......编辑:我正在使用Delphi6 最佳答案 (Un)幸运的是,您无法
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。社区在5个月前审查了是否重新打开这个问题,然后将其关闭:原始关闭原因未解决Improvethisquestion我维护着一个用Delphi7编写的旧的仅限PC的应用程序。尽管Delphi在过去为我提供了很好的服务,但我现在只将它用于这个应用程序,并且发现我的语言技能正在下降。它的语法与我的“日常工作”语言Java/Ruby差别太大,所以我需要更长的时间才能开始编写新代码,而且它太旧了,我没有使用过很多接口