Tag: 泊坞员注册表

快速计算64位整数的log2

一个伟大的编程资源Bit Twiddling Hacks提出了( 这里 )计算一个32位整数的log2的方法: #define LT(n) n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n static const char LogTable256[256] = { -1, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, LT(4), LT(5), LT(5), LT(6), LT(6), LT(6), LT(6), LT(7), LT(7), LT(7), […]

C#中的静默失败,看似未处理的exception不会使程序崩溃

在Winforms应用程序中,在窗体的Load事件中,添加以下行: throw new Exception(); 并运行该应用程序。 它运行没有问题。 这被称为无声故障,您可以尝试在之前和之后添加消息框,并且很快您会发现,不是崩溃应用程序,而是从Load事件中退出throw语句。 我相信没有必要解释这是多么的丑陋和危险。 尽pipe如此,我仍然怀疑这种恐怖行为背后的原因。 我相信这不是一个devise决定,可能是不择手段,或者懒惰。 有人知道吗? 如果有人能指出我可能导致静音故障的事件列表,我会很高兴。 这是我的代码片段 – 我不知道它可能会有什么帮助 – 但是,在这里是: using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; namespace WindowsFormsApplication1 { static class Program { /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Form f = new Form(); f.Load […]

从64位进程调用32位代码

我有一个应用程序,我们试图从32位迁移到64位。 它是.NET,使用x64标志进行编译。 但是,我们有大量编译为32位的FORTRAN 90编写的DLL。 FORTRAN DLL中的函数非常简单:将数据放入数据中; 没有任何forms的状态。 我们也没有花太多时间,总共有3%,但是它所执行的计算逻辑是非常宝贵的。 我可以以某种方式从64位代码调用32位DLL? MSDNbuild议我不能,期限。 我做了一些简单的黑客行为,并validation了这一点。 一切都会引发无效的入口点exception。 目前唯一可能的解决scheme是为所有32位DLL函数创buildCOM +包装器,并从64位进程调用COM。 这似乎相当头痛。 我们也可以在WoW模拟中运行这个过程,但是内存的上限不会增加,上限为1.6GB左右。 有没有其他的方式来从64位CLR过程调用32位DLL?

如何查找本机DLL文件是否被编译为x64或x86?

我想确定本机程序集是否从托pipe代码应用程序( C# )编译为x64或x86。 我认为它必须在PE头的某个地方,因为OS加载器需要知道这个信息,但我找不到它。 当然,我更喜欢用托pipe代码来做,但如果有必要,我可以使用本机C ++。

使用并行程序集加载DLL的x64或x32版本

我们有两个版本的托pipeC ++程序集,一个用于x86,一个用于x64。 这个程序集是由AnyCPU编译的.net应用程序调用的。 我们正在部署我们的代码通过文件复制安装,并希望继续这样做。 当应用程序dynamicselect处理器体系结构时,是否可以使用并行程序集清单分别加载x86或x64程序集? 还是有另一种方式来完成文件复制部署(例如不使用GAC)?

C# – 如何获得Windows 64位上的程序文件(x86)

我在用着: FileInfo( System.Environment.GetFolderPath( System.Environment.SpecialFolder.ProgramFiles) + @"\MyInstalledApp" 为了确定一个程序是否在用户机器上被检测到(这不是理想的,但我正在寻找的程序是一个MS-DOS应用程序的一个正确的旧kludge,我想不出另一种方法)。 在Windows XP和32位版本的Windows Vista上,这工作正常。 但是,在x64 Windows Vista上,代码将返回x64 Program Files文件夹,而应用程序则安装在Program Files x86中。 有没有一种方法编程方式返回path程序文件x86没有硬接线“C:\ Program Files文件(x86)”?

如何使用Visual C ++ 2010 Express编译64位应用程序?

有没有一种简单的方法来编译32位版本的Visual C ++ 2010 Express的64位应用程序? 什么configuration,如果有的话,是必要的?

Java 32位与64位兼容

将Java代码构build和编译为32位JDK转换为32位字节代码是否适用于64位JVM? 或者一个64位的JVM需要64位的字节码? 为了给出更多的细节,我有一个在运行32位JVM的Solaris环境中工作的代码,但是现在我在将JDK和Weblogic Server升级到64位后遇到了问题。

如何在PHP上有64位整数?

有人知道如何在PHP上有64位整数? 它似乎不是通过configuration文件,而是它可能是一个编译时选项,它取决于平台?

什么是在64位Windows上长的位大小?

不久以前,有人告诉我,在64位机器上不是64位,我应该总是使用int 。 这对我来说没有意义。 我看过文档(例如苹果官方网站上的文档)说,编译64位CPU时,确实是64位。 我查了一下在64位Windows上find了什么 Windows: long和int保持32位长度,为64位整数定义特殊的新数据types。 (来自http://www.intel.com/cd/ids/developer/asmo-na/eng/197664.htm?page=2 ) 我应该使用什么? 我应该定义一些像uw , sw ((un)signed long )作为一个long如果不是在Windows上,否则检查目标CPU bitsize?