问题标签 [x86-64]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1187 浏览

x86 - 如何确定我正在安装的应用程序是 32 位还是 64 位?

我希望能够预测应用程序的默认安装位置。在 64 位机器上,如果是 32 位应用程序,它将安装在“Program Files (x86)”中,如果是 64 位应用程序,它将安装在“Program Files”中。

我的目标是使用默认位置安装应用程序并验证安装是否正常。但为此,我需要知道它将安装在哪里。如果我知道应用程序是为什么架构构建的,我认为它会达到我的目的。

0 投票
3 回答
39023 浏览

.net - Windows 7/64 上的 NUnit“丢失”GPSVC.DLL

我最近从 Vista/32 升级到 Win7/64。在我的旧机器上,一切正常。

不幸的是,在我的新机器上,NUnit 不会加载我的单元测试,并显示错误消息“System.IO.FileNotFoundException:无法加载文件或程序集'UnitTest'或其依赖项之一。系统找不到指定的文件”。(实际上,我必须检查我所有的解决方案项目并将它们设置为 32 位才能做到这一点。)

所以我加载了 Dependency Walker,它告诉我我缺少IESHIMS.DLL。我在我的机器上找到了两个,所以我从 Internet Explorer 目录中复制了 32 位版本,DW 停止抱怨该文件。

但是,它也缺少GPSVC.DLL。我在 C:\Windows\System32 中只找到了一个副本,但是当我将它复制到我的单元测试目录时,DW 抱怨它是 64 位的,并且 NUnit 仍然无法运行。它现在还将 SYSNTFY.DLL添加到缺失列表中。我只有其中一个,而且也是 64 位的。NUnit 仍然报错。

那么我应该放弃这个 64 位操作系统并回到旧的 32 位,还是我遗漏了一些明显的东西?

0 投票
2 回答
3944 浏览

objective-c - 当应用程序窗口不活动时如何拦截Cocoa中的热键

我正在尝试创建一个在执行时不打开窗口的实用程序,并且可以通过热键激活该实用程序;我读到目前 Cocoa 没有这个功能,我应该使用已弃用的 Carbon 功能。

难道真的没有办法在 Cocoa 中使用全局热键吗?我应该怎么做:等待 Cocoa 引入一个函数,或者使用 carbon 函数,直到 Cocoa 中没有引入类似的函数?

0 投票
1 回答
313 浏览

x86-64 - Ghostscript 8.15 和 8.70 之间的兼容性问题

我在 x86_64 系统上使用 ghostscript 8.15 进行 pdf 光栅化。现在由于新功能,我想切换到 8.70 版。但是,我注意到 Ghostscript 在 8.70 版本中记录了仅支持 32 位 postscript 整数。我不太明白这会如何影响我的应用程序的行为,并且想知道是否有人对我不想升级的原因有任何想法或理由。

0 投票
3 回答
8440 浏览

c# - Windows 7 中的未授权访问异常

我有一个应用程序,它在启动时读取许可证文件。我的安装在 Program Files 中为应用程序创建文件夹,创建许可证文件夹并将许可证文件放在那里。但是,当我尝试运行该应用程序时,它需要读取/更新许可证文件。当我尝试这样做时,我得到一个“未经授权的访问异常”。我以管理员身份登录并手动运行该程序。

知道为什么即使路径正确我也无法访问该文件?但是在安装它创建文件和文件夹就好了?

我有 MyApplication.exe,我的许可证阅读器位于一个名为 MyApplicationTools 的单独 DLL 中。我正在读/写许可证文件,如下所示:

谢谢

0 投票
3 回答
5085 浏览

c - 如何让`gcc`从标准C生成x86-64的`bts`指令?

最近一个问题的启发,我想知道是否有人知道如何在 Linux x86-64 平台上gcc生成 x86-64bts指令(位测试和设置),而不使用内联汇编或非标准编译器内在函数。

相关问题:

可移植性对我来说比 更重要bts,所以我不会使用 andasm指令,如果有其他解决方案,我宁愿不使用编译器内在函数。

编辑:C 源语言不支持原子操作,所以我对获得原子测试和设置并不特别感兴趣(尽管这是测试和设置首先存在的最初原因)。如果我想要一些原子的东西,我知道我没有机会用标准的 C 源代码来做:它必须是内在的、库函数或内联汇编。(我在支持多线程的编译器中实现了原子操作。)

0 投票
5 回答
6608 浏览

c# - 为 32 位和 64 位非托管 DLL 创建托管包装器

我们正在围绕非托管 DLL 创建 C# 包装器。非托管 DLL 有 32 位和 64 位版本。我们将托管包装器保留在其自己的项目中,以便我们可以将其构建为单独的组件并在解决方案中重用它。

然而,这会导致一些问题。由于 32 位和 64 位版本的非托管 DLL 具有相同的名称,因此我们无法将正确的非托管 DLL 移动到输出 (bin) 目录。如果构建配置是 x86,我们要复制 32 位版本,使用 x64 复制 64 位。只需一个处理器架构,这很容易实现。我们只是在我们的项目中包含非托管 DLL,并在文件上将 copy local 设置为 true。但是由于我们需要同时针对这两个目标,因此更加棘手。

我们在同一个解决方案/项目中找到了此链接Targeting both 32bit and 64bit with Visual Studio,但这似乎引用了机器上已经存在的一些 DLL。我们希望将正确版本的 DLL 复制到输出目录 (bin)。

任何有关如何解决此问题的提示或技术都非常受欢迎。

0 投票
1 回答
4083 浏览

c - 自定义 X86_64 调用约定到 C 函数调用

我必须做一个接口(比如,一个包装器),它允许使用他的调用约定从 X86_64 汇编代码调用 C 函数,以及其他调用约定。最好的事情是非常“独立于编译器”(只是修改包装器),所以我正在寻找将寄存器/堆栈的东西放在编译器上的东西。我已经看过这里:P/Invoke 和 C# 的自定义调用约定,它与我要做的很接近。目前,我正在使用 GCC,但欢迎来自其他编译器的提示!

所以,这就是问题的最佳视图(自定义编码约定很奇怪):

我需要能够调用“特殊”(包装器)C 函数;这里的工作将是在其他 C 函数之间调度调用。所以这个包装器需要找到 %r11,保存所有寄存器并准备堆栈以供进一步调用。在 C 中是否有适当的方法来执行此操作(使用一些内联 asm)?

非常感谢

0 投票
2 回答
339 浏览

plugins - 将 x86 TortoiseSVN 插件转换为 x64

我正在尝试转换我们编写的 32 位 TortoiseSVN 插件(IBugTraqProvider 实现),以便它可以在 TortoiseSVN x64 上运行;但我正在努力解决我需要改变的东西才能让它发挥作用。是否有任何特定的工具可以提供帮助,或者是否有人知道需要更改哪些类型的东西(参考/IBugTraqProvider?)

0 投票
2 回答
369 浏览

c++ - Visual Studio 中的嵌入式程序集文件

我会简明扼要。在 Visual Studio 中创建 64 位代码时,_asm 块已被完全剥离。我的问题是,我在哪里可以找到一些关于如何在我可以从我的项目中调用的代码中使用汇编的信息。就像一个汇编文件一样,我想它有一些“优化”的函数,我可以在我的 C++ 源代码中直接调用它。