64-bit

SendInput and 64bits

非 Y 不嫁゛ 提交于 2019-12-27 15:42:59
问题 Below is an extract of some code I am using to simulate key presses via the SendInput API. This works correctly if I set my application to compile for an x86 CPU, but doesn't work for x64 CPU compilation. I'm guessing it has something todo with the fact that x64 uses double size pointers, but I tried to change this [FieldOffset(4)] to this [FieldOffset(8)] but it didn't work. Could it be something to do with the fact it is importing the 32bit version of user32.dll? #region SendInput API

How to use RIP Relative Addressing in a 64-bit assembly program?

。_饼干妹妹 提交于 2019-12-27 14:42:24
问题 How do I use RIP Relative Addressing in a Linux assembly program for the AMD64 archtitecture? I am looking for a simple example (a Hello world program) that uses the AMD64 RIP relative adressing mode. For example the following 64-bit assembly program would work with normal (absolute addressing): .text .global _start _start: mov $0xd, %rdx mov $msg, %rsi pushq $0x1 pop %rax mov %rax, %rdi syscall xor %rdi, %rdi pushq $0x3c pop %rax syscall .data msg: .ascii "Hello world!\n" I am guessing that

Converting a pointer into an integer

笑着哭i 提交于 2019-12-27 11:02:51
问题 I am trying to adapt an existing code to a 64 bit machine. The main problem is that in one function, the previous coder uses a void* argument that is converted into suitable type in the function itself. A short example: void function(MESSAGE_ID id, void* param) { if(id == FOO) { int real_param = (int)param; // ... } } Of course, on a 64 bit machine, I get the error: error: cast from 'void*' to 'int' loses precision I would like to correct this so that it still works on a 32 bit machine and as

X86 vs X64 vs AnyCPU [closed]

你。 提交于 2019-12-25 20:02:24
问题 Closed . This question needs to be more focused. It is not currently accepting answers. Want to improve this question? Update the question so it focuses on one problem only by editing this post. Closed 4 years ago . Have a little confusion on X86 , X64 and AnyCPU configuration in VS 2008 , vs 2010 Question 01 How come X86 works in 64 bit windows 7 , windows 8 and even the server configuration machines that is in 64 bit OS ? Question 02 X86 vs X64 vs AnyCPU what are the clear differences ? can

Compiling Prolog-JPL on Ubuntu 11.10 64-bit?

你。 提交于 2019-12-25 08:27:26
问题 I'm trying to compile prolog-JPL as described here: https://code.google.com/p/javanaproche/wiki/HowToJPL Unfortunately, it ends with an error: ********************** * Package plunit ********************** config.status: creating Makefile ********************** * Package jpl ********************** config.status: creating Makefile config.status: creating src/java/Makefile config.status: creating config.h config.status: config.h is unchanged ********************** * Package R ******************

Building and debugging Chromium using visual studio giving error : error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'

邮差的信 提交于 2019-12-25 06:55:08
问题 I want to debug the chromium code to check how it compiles the javascript code. I have downloaded the chromium code and trying to build cef solution file using visual studio but I am getting the following error: error LNK1112: module machine type 'x64' conflicts with target machine type 'X86' \third_party\libjpeg_turbo\jccolss2-64.obj cefclient error MSB3073: The command " call ninja.exe -C ..\out\Debug\ cefclient " exited with code 1. D:\Ishan\Chromium\Chromium\chromium\src\cef\cefclient

How can a 32 bit client communicate with a 64 bit server if long type is passed?

夙愿已清 提交于 2019-12-25 05:35:30
问题 We have a 32-bit C++ GUI application running on 32 bit windows 7. We are planning to migrate our server with C++ apps to 64-bit linux. We have noticed that long types are larger in 64 bit. This will be incompatible with the client-server message passing from 64-bit to 32-bit. What is a good way to solve this incompatibility? Do we need to change the code? How? or Do we use a third party software to do the conversion? What software is it? 回答1: That's why there is the standardized int32_t and

How much memory can x64 process can take on 4GB RAM

时光毁灭记忆、已成空白 提交于 2019-12-25 05:07:43
问题 I have a x64 application. It is a bit heavy application (in terms of thread counts, memory needed etc). I'm running this application on a 4GB RAM 64-bit Windows7 Quad core machine. But what i notice is after my application takes around 2.2-2.3 GB Ram it crashes. Is this required behavious? Can 64bit applications at max take only 2.3-2.4 GB RAM from 4GB RAM? 回答1: No, check that you don't have any overflows or other bugs first. Even 32-bit applications can address - use more RAM, so it would be

How much memory can x64 process can take on 4GB RAM

泄露秘密 提交于 2019-12-25 05:07:07
问题 I have a x64 application. It is a bit heavy application (in terms of thread counts, memory needed etc). I'm running this application on a 4GB RAM 64-bit Windows7 Quad core machine. But what i notice is after my application takes around 2.2-2.3 GB Ram it crashes. Is this required behavious? Can 64bit applications at max take only 2.3-2.4 GB RAM from 4GB RAM? 回答1: No, check that you don't have any overflows or other bugs first. Even 32-bit applications can address - use more RAM, so it would be

Intel x64 instructions CMPSB/CMPSW/CMPSD/CMPSQ [closed]

◇◆丶佛笑我妖孽 提交于 2019-12-25 04:44:12
问题 Closed . This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 4 years ago . These instructions are on page 558 of the intel manual. I get the general idea but I'm stuck on the exact encdoding of these instructions. Here is what I understand, please correct me if I'm wrong. This is all in 64-bit mode. Opcode - Instruction: A6 - compare byte at address RSI with byte at