草庐IT

c# - 从 Delphi 调用 C# dll

我用单一方法编写了.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的使

c# - 评估数学表达式的最佳算法?

评估数学表达式的最佳算法是什么?我希望能够稍微优化一下,因为我可能有一个包含各种变量的公式,我可能需要使用不同的变量对其进行数百次评估。所以基本上,如果我最初可以解析公式,以便以某种方式对其进行优化,然后我可以根据需要多次将变量传递给这个优化版本,每次它都会为我生成一个结果。我将使用Delphi或C#编写此代码。我已经使用调车场算法编写了类似的东西,但每次我需要计算相同的公式时,我都必须经过解析阶段。必须有更好的方法来做到这一点。 最佳答案 如果你想用Delphi来做,你可以看看JclExprEval单元是如何工作的,它是JEDIC

c# - 在 Delphi 中,Math.Round() 与 MidpointRounding.AwayFromZero 的等效项是什么?

我如何在Delphi中使用类似Math.Round和MidpointRounding.AwayFromZero的c#?等同于:doubled=2.125;Console.WriteLine(Math.Round(d,2,MidpointRounding.AwayFromZero));输出:2.13在德尔福? 最佳答案 我相信DelphiRTL的SimpleRoundTo函数本质上是这样做的,至少如果FPU舍入模式是“正确的”。请仔细阅读其文档和实现,然后确定它是否足以满足您的目的。但请注意,设置像这样的单个舍入操作的舍入模式是使用全

c# - Delphi - 是否有任何等效于 C# 锁的东西?

我正在用Delphi编写一个多线程应用程序,需要使用一些东西来保护共享资源。在C#中,我会使用“lock”关键字:privatesomeMethod(){lock(mySharedObj){//...dosomethingwithmySharedObj}}在Delphi中我找不到任何类似的东西,我只找到了TThread.Synchronize(someMethod)方法,它通过在主VCL线程中调用someMethod来防止潜在的冲突,但这并不是我想要做的.......编辑:我正在使用Delphi6 最佳答案 (Un)幸运的是,您无法

c# - 有哪些工具可以将 Delphi 7 应用程序转换为 C# 和 .Net 框架?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。社区在5个月前审查了是否重新打开这个问题,然后将其关闭:原始关闭原因未解决Improvethisquestion我维护着一个用Delphi7编写的旧的仅限PC的应用程序。尽管Delphi在过去为我提供了很好的服务,但我现在只将它用于这个应用程序,并且发现我的语言技能正在下降。它的语法与我的“日常工作”语言Java/Ruby差别太大,所以我需要更长的时间才能开始编写新代码,而且它太旧了,我没有使用过很多接口

c# - .NET 相当于 Delphi 的 forceDirectory

有谁知道.NET/C#中Delphi的forceDirectory函数的等价物是什么?对于不了解delphi的人,forceDirectory会创建给定路径中的所有目录(如果它不存在)。 最佳答案 方法Directory.CreateDirectory(path)自动创建路径中指定的所有目录/子目录。来自Remarks:Anyandalldirectoriesspecifiedinpatharecreated 关于c#-.NET相当于Delphi的forceDirectory,我们在St

c# - Blowfish 引擎的 Bouncy CaSTLe CTS 模式未按预期工作

也许我的期望是错误的。我不是密码学专家,我只是一个普通用户。到目前为止,我已经竭尽全力地尝试使这项工作成功。背景信息:我正在尝试从使用Blowfish引擎(TCipher_Blowfish_)和CTS操作模式(cmCTS)的DelphiEncryptionCompendium移植旧版加密。私钥通过RipeMD256(THash_RipeMD256)散列。问题:输入的纯文本字节数组需要与CIPHER_BLOCK大小相同。据我所知,它不应该。来自维基百科:Incryptography,ciphertextstealing(CTS)isageneralmethodofusingablockc

javascript - 如何让 TWebBrowser 在出错后继续运行 JavaScript?

我在Delphi2010上的WebBrowser中处理javascript错误时遇到了一些麻烦。我正在使用启用了静默属性的WebBrowser。似乎没问题,但在有错误脚本的站点上存在一个问题:似乎错误后脚本的一部分没有执行。某些脚本的结果与IE略有不同。你知道如何解决这个问题吗? 最佳答案 您可以使用IOleCommandTarget并在其IOleCommandTarget.Exec方法捕捉OLECMDID_SHOWSCRIPTERROR命令。在下面的示例中,我使用了插入类,因此如果您将此代码放入您的单元中,则只有表单上的Web浏览

javascript - 如何使用 Chromium 和 Delphi 6 在网页中将 "native functions"公开给 Javascript?

在DelphiChromiumEmbedded的帮助下,我已经成功地将Chromium嵌入到我的Delphi6项目中.现在我希望能够执行Javascript代码并将结果返回到我的主机Delphi应用程序。我当前的方法是调用ExecuteJavascript()并使用Javascript调用将其结果写入的DOM元素,然后在Delphi的TTimer方法中轮询该元素以检索结果。但是,我读到了有关使用native函数和V8扩展让Javascript调用“回调”到我的Delphi代码中作为接收结果的方法:http://magpcss.org/ceforum/viewtopic.php?f=7&

javascript - 如何使用来自 Delphi 的 Google Chrome 浏览器的 V8 JavaScript 解释器?

我想在我的Delphi应用程序中嵌入GoogleChrome附带的V8JavaScript解释器。我知道chromiumembedded来自Google的开源项目,但我想知道是否有人知道任何Pascal/Delphi包装器?我链接的站点上的zip文件中包含一个用C++编写的示例项目。如果不出意外,我将缓慢而痛苦地进行转换。更新:我只想嵌入V8JavaScript解释器,不是Chromium浏览器。 最佳答案 最理想的解决方案是创建一个包装器,最好使用未修改的原始源代码,并将该包装器编译为一个OBJ文件(使用C++),然后将其链接到D