32bit-64bit

How to run an API made for 32-bit on a 64-bit machine?

╄→尐↘猪︶ㄣ 提交于 2019-12-14 03:45:00
问题 I'm writing a java application which has to communicate with has to communicate with an XBee radio over a usb-cable.To do this , I use the xbee-java API (http://code.google.com/p/xbee-api/) On my old 32-bit machine it all worked fine . But when I imported the project to a 64-bit machine , it throws immediately an exception which says :" Can't load IA 32-bit .dll on a AMD 64-bit platform" . I don't have any idea how I can solve this problem . the error code : java.lang.UnsatisfiedLinkError: C:

How to create thunk in x64?

痞子三分冷 提交于 2019-12-14 03:22:29
问题 I've found nice example how to create thunk for closure, but it's 32-bit version: #include <stdio.h> #include <stdlib.h> #include <sys/mman.h> struct env { int x; }; struct __attribute__((packed)) thunk { unsigned char push; struct env * env_addr; unsigned char call; signed long call_offset; unsigned char add_esp[3]; unsigned char ret; }; struct thunk default_thunk = {0x68, 0, 0xe8, 0, {0x83, 0xc4, 0x04}, 0xc3}; typedef void (* cfunc)(); struct thunk * make_thunk(struct env * env, void * code

64 Bit application communicating with 32bit process

笑着哭i 提交于 2019-12-14 01:35:37
问题 I have 32 bit application using 32 bit third party library. Now I have to make my application 64 bit , so that it can take advantage of 64 bit address space ( large memory ). Since I can not load 32bit library into 64bit application process, I am thinking of creating 32bit executable wrapper over third party library and communicate from my 64 bit app using IPC ( named pipe/socket ). So my question is would their any issue in doing so ?. Also if I have to install my application on 64 bit

Changes to TRegistry key dont 'hold'

谁都会走 提交于 2019-12-13 22:14:25
问题 From my Win32 app I'm reading and writing HKEY_CURRENT_USER\Software\Embarcadero\BDS\9.0\History Lists\hlRunParameters , that is where the Delphi XE2 IDE writes run-time parameters. This is the write code: procedure TFrmCleanIDEParams.BtnWriteClick(Sender: TObject); var lReg : TRegistry; lValue, lKey : String; i, lNrToWrite, lNrRegVals: Integer; begin ..... lKey := Trim(EdtRegKey.Text); // '\Software\Embarcadero\BDS\9.0\History Lists\hlRunParameters' if lKey = '' then Exit; if lKey[1] = '\'

Purpose of “Target machine” field in Visual studio -> Linker-> Advanced Options->Target Machine

廉价感情. 提交于 2019-12-13 21:13:23
问题 I'm porting a 32-bit C++ app to 64-bit (using VS2008). I'm not sure what does this field mean in the VS2008 :: Visual studio ->Configuration Properties-> Linker-> Advanced Options->Target Machine. By default it's value is set to " Not set ". Is it compulsory to change it's value to "MACHINEx64" if I want my application to be ported to 64-bit executable. 回答1: Yes, this is a very important option. It sets the IMAGE_FILE_HEADER.Machine field in the executable file. The very first field of the

VBS: ActiveX component can't create object: 'Citrix.ICAClient' errror on 64-bit

丶灬走出姿态 提交于 2019-12-13 19:57:01
问题 I have a script that looks for all open Citrix connections and disconnects any of them that aren't associated with the user logged in to Windows (Citrix Web Interface connections). It works perfectly fine on 32-bit machines (XP or 7) but not on 64-bit. I know it does rely on two Citrix reg keys ( AllowLiveMonitoring & AllowSimulationAPI ) and the WfIcaLib.dll , which will be in different locations on different architecture. I thought it was something with my script and 64-bit, but when I

64 bit division in ARM Assembly SOS

泪湿孤枕 提交于 2019-12-13 12:35:30
问题 I am calculating the average of sixteen 64 bit numbers added together and I think that I have done all the addition correctly, but now I need to figure out how to divide a 64 bit number by 16 and I am stuck! Any help would be great thank you so much. Here is my code so far. tableSize EQU 16 sum EQU 0x40000000 average EQU 0x40000008 MOV r8, #14 ADR r0, table LDR r9, =sum LDR r10,=average LDR r1, [r0], #1 ;hi #1 LDR r2, [r0], #1 ;lo #1 SUM SUB r8, r8, #1 LDR r3, [r0], #1 ;hi #2 LDR r4, [r0], #1

_Complex long int

不羁的心 提交于 2019-12-13 10:33:53
问题 tl;dr; Q what does int mean in _Complex long int ? Why is it legal? Longer version I was porting some 32-bit code to be 64-bit safe. In one place I noted it uses: static __complex__ long int i32X[256]; A dumb search and replace changing "long int" for int32_t gave me a compilation error. __complex__ is an older GNUism which has been replaced by the standard _Complex. Here is a short code snippet to reproduce the issue: #include <complex.h> #include <inttypes.h> typedef _Complex long int

Microsoft Access Database Engine 2010 Redistributable 64 bit only works if Enable 32-bit set to true

流过昼夜 提交于 2019-12-13 07:39:35
问题 I have an ASP classic application that I'm migrating from a Windows 2000 to Windows 2012 Server. It uses the following code to import xls files Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open "DRIVER={Microsoft Excel Driver (*.xls)}; IMEX=1; HDR=NO; Excel 8.0; DBQ=" & Server.MapPath("\Imports\") &"\"&fn& "; " and the following for csv files Set objConn = CreateObject("ADODB.Connection") Set objRS = CreateObject("ADODB.Recordset") objConn.Open "Provider=Microsoft.Jet.OLEDB.4

Connect to MS Access DB (.accdb) Without “Access Database Engine 2010”

寵の児 提交于 2019-12-13 07:00:13
问题 I'm working on a 64 bit C# solution and I wish to connect to an MS Access DB (.accdb file) without installing "Access Database Engine x64". The "Access Database Engine x64" installation demand that the currently installed MS Office version is a 64 bit, which is not an acceptable demand in the company environment. I realized that OLEDB and ODBC demand that "Access Database Engine x64" will be installed. Is there another way to connect to the Access file? Thanks! 回答1: I realized that OLEDB and