问题标签 [32bit-64bit]
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.
python - 将大型列表保存在内存中的替代方法(python)
如果我在python中有一个可能超出可用内存地址空间的列表(或数组,字典......),(32位python)有哪些选项和相对速度?(除了不列出那么大的列表)该列表可能会超出内存,但我无法事先知道。一旦它开始超过 75%,我不想再将列表保留在内存中(或者无论如何都是新项目),有没有办法在中途转换为基于文件的方法?
最好的(进出速度)文件存储选项是什么?
只需要存储一个简单的数字列表。无需随机访问第 N 个元素,只需追加/弹出类型的操作。
windows - 我应该提供我的应用程序的 x64 版本吗?
也许我在这里遗漏了 x64 平台的一个要点,但我的看法是,只有在大量内存、大指针或其他要求苛刻的情况下,x64 应用程序的性能才比 x86 版本(显然是在 x64 操作系统和硬件上)更好。涉及因素。
但是,我开始注意到一些较小的应用程序除了标准的 x86 版本之外还提供 x64 版本的安装程序。由于 x86 在使用 WoW 的 Windows x64 上运行得很好,我发布 x64 编译版本的应用程序有什么好处吗?照我看来:
优点:
- 潜在的更高性能(但在什么条件下)
缺点:
- 要创建/支持的其他构建
- x86 目标中不存在的 x64 目标中的潜在错误
- 依赖 x64 版本的供应商/操作系统 DLL,需要不同的安装清单并引入额外的故障排除复杂性
有哪些令人信服的理由让我重新考虑添加我的应用程序的 x64 编译版本?
c# - Microsoft.Jet.OLEDB.4.0' 提供程序未在本地计算机上注册
我在 32 位 Windows 2008 服务器中创建了一个用 .NET 3.5 开发的 Windows 应用程序。在 64 位服务器中部署应用程序时,它显示错误“Microsoft.Jet.OLEDB.4.0' 提供程序未在本地计算机上注册”。
所以作为这个问题的解决方案,我已经将项目的构建属性更改为 X86,这样它将以 32 位模式构建,并在 32 位机器上重建项目。但是,同一个项目使用其他数据库驱动程序(DB2、SQL 等)连接到其他数据库。因此,当我在 64 位操作系统中再次部署我的应用程序时,它会引发异常“尝试在 32 位平台上加载 64 位程序集。”
我正在使用 Microsoft.Jet.OLEDB.4.0 驱动程序读取和写入 Excel (.xls)
c# - C#:如何检测其他进程的位数......不是当前进程
我如何知道某个处于运行状态的进程的位数。(不是当前的.. IntPtr.size 有用的地方) iswow64process()... 仅给出它是否是 WoW64 进程,但不输出 32/64 位.. 任何人都可以帮忙..
.net - 如何从 32 位进程启动 64 位进程
我正在尝试从我们的 32 位 .NET 应用程序运行 64 位可执行文件 (java.exe)。我正在使用Process
类和调用cmd /c <command name>
以支持所有可能的命令(如dir
等cd
)。
问题是我在我的机器上安装了 64 位版本的 JRE,而 java.exe 只能从C:\Windows\System32
文件夹 (x64) 中使用。我已经尝试通过调用显式启动 64 位版本,cmd.exe
但由于调用进程是 32 位,C:\Windows\System32\cmd.exe
它被重定向到。SysWOW64
我还能做些什么来让它工作吗?
编辑整个cmd /c
事情有点像红鲱鱼。这不是问题的一部分,能够运行 64 位可执行文件是。
.net - 我如何获得注册密钥的真实路径?
如果您在 64 位机器上运行 32 位应用程序(我使用的是 Windows 7)并且您编写此代码
它实际上会从
并不是
以程序方式给定一个 RegistryKey 我如何计算出注册表中的真实路径?
c# - SSIS 对象模型 - 64 位计算机上的 Excel 连接管理器错误
我有一个 SSIS 包,它读取 Excel 文件(数据流源)并使用 OLEDB 目标数据流项将数据传输到 SQL Server。该包由 .Net 应用程序使用 SSIS 对象模型执行。存储在应用程序子文件夹内的文件系统中的包。
该软件包在我的开发/测试机器上都可以正常工作。这两台机器都有 win2k3 32 位。SSIS 是在 BIDS 32 位环境中构建的。
当我在具有 win2k3 x64 标准版的生产机器上部署此应用程序时,我收到错误
发生 OLE DB 错误。错误代码:0x80040154。OLE DB 记录可用。来源:“Microsoft OLE DB 服务组件”Hresult:0x80040154 描述:“类未注册”。对连接管理器“Excel 连接管理器”的 AcquireConnection 方法调用失败,错误代码为 0xC0202009。组件“Excel Source”(630) 验证失败并返回错误代码 0xC020801C。
我在其他帖子中读到设置项目的 Run64BitRuntime 属性(在设计期间)解决了从 BIDS 运行它时的问题。
如何通过 SSIS 对象模型设置此属性。
这是执行包的部分代码
谢谢
马苏德
c++ - 在 64 位机器上编译 32 位代码时,我应该如何处理“从 'void*' 转换为 'int' 失去精度”?
我有一个可以在 32 位机器上编译并正常工作的包。我现在正试图让它在 64 位机器上编译并发现以下错误 -
是否有编译器标志来抑制这些错误?还是我必须手动编辑这些文件以避免这些强制转换?
.net - 构造 System.Data.SQLite.SQLiteConnection 时导致 System.BadImageFormatException 的原因
我已将代码分解为尽可能小的语句:
从 WinForm 应用程序调用代码时出现以下错误:
System.BadImageFormatException:无法加载文件或程序集“System.Data.SQLite,版本=1.0.65.0,文化=中性,PublicKeyToken=db937bc2d44ff139”或其依赖项之一。试图加载格式不正确的程序。文件名:'System.Data.SQLite,版本=1.0.65.0,文化=中性,PublicKeyToken=db937bc2d44ff139'
然而,从 MS Unit Test 调用同一段代码我没有收到错误,而且完整的代码集按预期工作。