[issue26006] 32 bits python ctypes creates 64 bits process from 32 bits executable
Artur Korobeynyk
report at bugs.python.org
Mon Jan 4 07:06:49 EST 2016
New submission from Artur Korobeynyk:
Hi,
I have a 32 bits python on 64 bits Windows and 32 bits executable (compiled from native C).
When I do kernel32.CreateProcessA(path_to_exe, ...) python creates a process which is 64 bit (ctypes IsWow64Process returns true).
I expect it to be 32 as well. Am I wrong or that is a bug?
I attached testprog.exe but it requires testdll.dll
The sources of testprog.c:
#include <stdio.h>
#include <windows.h>
int main()
{
Sleep(15000);
printf("%d", testSum(5,10));
return 0;
}
testdll.c
#include <stdio.h>
__declspec(dllexport) int __cdecl testSum(int a, int b)
{
return(a+b);
}
compiled as:
/usr/bin/i686-pc-mingw32-gcc.exe -c testdll.c
/usr/bin/i686-pc-mingw32-gcc.exe --shared -o testdll.dll testdll.o
/usr/bin/i686-pc-mingw32-gcc.exe -o testprog testprog.c -L. -ltestdll
Process creation:
if kernel32.CreateProcessA(path_to_exe,
None,
None,
None,
None,
creation_flags,
None,
None,
byref(startupinfo),
byref(process_information))
----------
components: ctypes
files: testprog.exe
messages: 257461
nosy: Artur Korobeynyk
priority: normal
severity: normal
status: open
title: 32 bits python ctypes creates 64 bits process from 32 bits executable
versions: Python 2.7
Added file: http://bugs.python.org/file41492/testprog.exe
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue26006>
_______________________________________
More information about the Python-bugs-list
mailing list