有人有 OPOS 的经验吗?我无法让我的应用程序识别在 64 位计算机上运行的设备的 LDN。
我已经知道 OleforRetail 的内容现在位于注册表中的 Wow6432Node 下。我怀疑通用控件因此无法找到 LDN。有什么解决方法吗?
如果做不到这一点,是否有一个集中的 OPOS 开发论坛?
顺便说一句:我使用 Monroe Consulting 提供的通用控件。
谢谢!
正如标题所说
有没有办法获得c++中的系统架构?
谢谢!
当我尝试在 64 位系统中安装 VS 项目时出现此错误。我已经下载并安装了AccessDatabaseEngine。还有其他任何方法可以做到这一点,我在我的应用程序中使用 MS Access(Office 2007)数据库。两个系统都使用x32 系统工具**。如果我正在安装 **AccessDatabaseEngine(x64),它会收到一个错误,您的系统包含(x32 系统工具)
这是我现在正在玩的代码:
# file-name: test.s
# 64-bit GNU as source code.
.global main
.section .text
main:
lea message, %rdi
push %rdi
call puts
lea message, %rdi
push %rdi
call printf
push $0
call _exit
.section .data
message: .asciz "Hello, World!"
Run Code Online (Sandbox Code Playgroud)
编译说明:gcc test.s -o test
修订版 1:
.global main
.section .text
main:
lea message, %rdi
call puts
lea message, %rdi
call printf
mov $0, %rdi
call _exit
.section .data
message: .asciz "Hello, World!"
Run Code Online (Sandbox Code Playgroud)
最终修订版(作品):
.global main
.section .text
main:
lea message, %rdi …Run Code Online (Sandbox Code Playgroud) 如果我跑:
#include <type_traits>
#include <iostream>
int main()
{
std::cout << "sizeof(long) = " << sizeof(long) << "\n";
std::cout << "sizeof(long long) = " << sizeof(long long) << "\n";
std::cout << "std::is_same<long, long long>::value = "
<< std::boolalpha << std::is_same<long, long long>::value
<< "\n";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在我的机器上(和Coliru),我得到:
sizeof(long) = 8
sizeof(long long) = 8
std::is_same<long, long long>::value = false
Run Code Online (Sandbox Code Playgroud)
它不仅仅是std::is_same<>; 翻译单元期待的一个实例int64_t失败,因为我只编译int并long long int在另一个翻译单元,尽管这一切发生在同一台机器上.
为什么这些类型不一样?我的意思是,表现出你所拥有typedef的相同类型的行为?
我正在使用Delphi 10.2.1编写IOS应用程序,但我无法让Delphi生成64位代码.当我在IOS模拟器中运行应用程序时,我收到一条消息,告诉我代码需要更新.是否有可用于强制64位代码生成的编译器指令?我使用基于x64的处理器在64位Windows系统上编码.在Mac上:Xcode是Ver 8.3.3.
我是 asm 的新手,我正在尝试对 /bin/bash 执行系统调用。但是我目前遇到以下问题:
我的代码适用于第一个参数长度小于 8 个字节的任何 execve 调用,即 "/bin/sh" 或 "/bin/ls" :
.section .data
name: .string "/bin/sh"
.section .text
.globl _start
_start:
#third argument of execve, set to NULL
xor %rdx, %rdx
#push nullbyte to the stack
pushq %rdx
#push /bin/sh to the stack
pushq name
#copy stack to rdi, 1st arg of execve
mov %rsp, %rdi
#copy 59 to rax, defining syscall number for execve
movq $59, %rax
#3rd arg of execve set to NULL
movq $0, …Run Code Online (Sandbox Code Playgroud) 当我在X64计算机上使用GCC编译器运行下面的代码时,输出i为90,但在x86上运行时,其值仍为2,那么处理内存的区别在哪里?
#include <stdio.h>
int main(void)
{
int arr[3]={50,7,30};
int i=2;
arr[3]=90;
printf("arr[2]=%d,arr[3]=%d,i=%d", arr[2], arr[3], i);
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试在发布模式下将C#程序编译为任何CPU.由于Any CPU设置,我希望创建的exe是MSIL 处理器体系结构.但是,它正在输出一个x86(我正在检查使用dotPeek程序集浏览器进行检查).
如果我将它指定为x64程序,我将获得一个x64程序.同样,当我指定x86时.
我应该得到一个MSIL处理器架构因为Any CPU对吗?为什么不发生?
为了在 OpenGL 中渲染视频,我遵循了Nehe 的本教程。我正在尝试在 x64 上构建它,但是在编译代码时它给了我一个错误,它指向 flipIt(void* buffer) 函数。是写的不好还是需要导入库?
void Video::flipIt(void* buffer)
{
void* b = buffer;
__asm
{
mov ecx, 256 * 256
mov ebx, b
label :
mov al, [ebx + 0]
mov ah, [ebx + 2]
mov[ebx + 2], al
mov[ebx + 0], ah
add ebx, 3
dec ecx
jnz label
}
}
Run Code Online (Sandbox Code Playgroud) 64-bit ×10
x86 ×5
assembly ×3
c++ ×3
c# ×2
.net ×1
architecture ×1
c ×1
compilation ×1
crt ×1
delphi ×1
delphi-ios ×1
execve ×1
graphics ×1
int64 ×1
long-long ×1
memory ×1
opengl ×1
opos ×1
system-calls ×1
types ×1
visual-c++ ×1
x86-64 ×1
xcode ×1