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 <rep...@bugs.python.org>
<http://bugs.python.org/issue26006>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to