win64

What's an alternative to GWL_USERDATA for storing an object pointer?

In the Windows applications I work on, we have a custom framework that sits directly above Win32 (don't ask). When we create a window, our normal practice is to put this in the window's user data area via SetWindowLong(hwnd, GWL-USERDATA, this), which allows us to have an MFC-like callback or a tightly integrated WndProc, depending. Th...

How do you compile OpenSSL for x64?

After following the instructions in INSTALL.W64 I have two problems: The code is still written to the "out32" folder. I need to be able to link to both 32-bit and 64-bit versions of the library on my workstation, so I don't want the 64-bit versions to clobber the 32-bit libs. The output is still 32-bit! This means that I get "unresolve...

How do I resolve "%1 is not a valid Win32 application"?

Environment: Windows Server 2003 R2 Enterprise 64bit, SP2 .NET framework is supposedly installed (2.0 SP2, 3.0 SP2, 3.5 SP1) I say "supposedly" because they are listed as installed under Add/Remove programs. I'm not sure it's properly installed, because the "ASP.NET" tab isn't added to any of the sites in IIS. In the IIS Web Service Ex...

Why did Windows 64 choose to require xmm6 and xmm7 to be saved/restored?

Why did Windows 64 choose to require xmm6 and xmm7 to be saved/restored? In Windows 32, you could write assembly routines which clobbered xmm0...xmm7. But if you take that same assembly code and run it in Windows 64, it will usually cause an application fault because VS2007 stores double-precision values in xmm6 and xmm7. It seemed to ...

WinDbg, with minidump from native 32-bit app crashing on 64-bit Windows, won't load symbols for system DLLs

I've got a minidump file from a crash in one of our apps. It's a 32-bit native app, and it was running on 64-bit Windows. If I load the minidump file into WinDbg, WinDbg won't load the symbols for the system DLLs. I've got my symbol paths configured correctly: _NT_SYMBOL_PATH=SRV*C:\WebSymbols*http://msdl.microsoft.com/download/symbols...

Write large file

I try to write to a large file, but it seems like it does not work for files larger than 2GB. I have tried with boost::iostreams::file_sink. Is this just a limit with the boost stream? Is there some other way I can write a large file on Win64 and win32? ...

Virtual allocation granularity and page size

Howdy folks, What are the typical values of the virtual allocation granularity and page size on Win64 platforms? That'd be SYSTEM_INFO's dwAllocationGranularity and dwPageSize. On Win32 systems these would be 64k and 4k. I need to know because I've designed a custom allocator based on VirtualAlloc for a Win32 application and wonder if...

VirtualStore not working on Vista x64

I have a little tray application that want's to write to it's own folder under the Program Files directory. I know not an ultimate design and I will fix it, but first I want to understand how this work. Running this on a 32-bit Vista machine it writes the files to the VirtualStore and it works just like it should. But when installing...

VirtualStore not working on Vista x64

I have a little tray application that want's to write to it's own folder under the Program Files directory. I know not an ultimate design and I will fix it, but first I want to understand how this work. Running this on a 32-bit Vista machine it writes the files to the VirtualStore and it works just like it should. But when installing...

Run Win32 IIS applications under Windows XP 64bit

How do I run windows 32bit applications in IIS on Windows XP 64 bit? Note: This is not running within Visual Studio. Note: Only 404 errors are logged. Note: 404 errors caused by IIS disabling CGI scripts ...

How to compile existing posix code for 64-bit Windows?

I'm ok with using Cygwin or MinGW, but I need to end up with 64-bit code, not 32-bit. This is because I will be calling the DLL from 64-bit managed C#. I can't seem to find and good references for setting up those tools to create 64-bit binaries. Also, it would be nice if the GCC was version 4, not version 3 as came with my Cygwin ins...

Loading a 32-bit process in a 64-bit environment.

I have a couple of questions as below. CHM is (Compiled HTML File) My CHM file has a link to launch a 32-bit application. The CHM file is coded in Javascript.This works fine in a 32-bit OS environment. But this does not work in a 64 bit OS environment.The reason being: When I open the chm file,64-bit version of hh.exe(an operatin...

Where's _WIN64 defined in C++/CLI project compiled as x64?

It seems to be added automagically in every project I create and I compile for x64 but it doesn't even appear in the project's Configuration Properties/(C/C++)/Preprocessor when selecting the x64 configuration. ...

Running a Data Synapse Win32 DLL Grid Node on a Windows 64 Machine?

We are developing a Data Synapse calc node process in C# that requires functionality in a Win32 DLL. We have no problems building this. The question is it has to run on a Windows 64 bit system, with Data Synapse 5.1 Grid APIs for Windows 64. While Windows 64 will run most processes transparently using WOW we don't know that Data Synapse...

Compiling with Delphi 2009 from a command line under Windows Vista 64-bit

Has anyone succeeded to compile a Win32 GUI app with the command line dcc32.exe compiler, under 64-bit Windows Vista, without installing Delphi 2009? On our system it fails, with a message that the DFM files contain unknown 16-bit resources. This is usually an indication that the DFM files cannot be read. It works perfectly on all 32-bit...

Using ImageList from VB6 application causes crash on Windows 7.0 64-bit

I have an old VB6 application that uses an ImageList control from COMCTL32.OCX ("Microsoft Windows Common Controls 5.0 (SP2)") to provide icons for TreeViews and ListViews. The app won't even launch on Windows 7.0 64 bit. The minute it tries to load the form that has the ImageList on it, it crashes (well, actually, the app winks out, ex...

Reliably detecting OS architecture in a Windows Desktop Gadget

I have some Javascript code that will programmatically register an COM interop assembly by writing all the necessary keys and values to the registry. An older version of this COM object was written in VB6 and didn't work correctly on x64 versions of Windows unless the user manually ran the x86 sidebar.exe, so some of our users would hav...

How to use "GS:" in 64-bit Windows Assembly (eg, porting TLS code)

How can an user-space program configure "GS:" under 64-bit Windows (currently XP-64)? (By configure, set GS:0 at an arbitrary 64-bit linear address). I am trying to port a "JIT" environment to X86-64 that was originally developed for Win32. One unfortunate design aspect is that identical code needs to run on multiple user-space threa...

x64 va_list in Visual Studio 2005

I have a class non-static member function, and it has variable arguments, I'm compiling on Visual Studio 2005, with the 64-bit runtime, on 64-bit Windows. void Class::Foo(void* ptr,...) { va_list args; va_start(args,ptr); float f=va_arg(args,float); va_end(args) } I'm expecting a float, I pass a float to the function. ...

SHGetSpecialFolderPath, how to access 64bit CSIDL from 32bit application

Is there a way from a 32bit application running on a 64bit system to have access to the default folders for 64bit applications? For example, using SHGetSpecialFolderPath with CSIDL_PROGRAM_FILES from a 32bit application returns "C:\Program Files (x86)' If the same call was used from a 64bit application, I would get "C:\Program Files"....