Linker error when improving GetLargestConsoleWindowSize
Hugh McMaster
hugh.mcmaster at masterindexing.com
Wed Mar 27 19:21:54 CDT 2013
-----Original Message-----
From: Eric Pouech [mailto:eric.pouech at orange.fr]
Sent: Wednesday, 27 March 2013 8:54 AM
To: wine-devel at winehq.org
Subject: Re: Linker error when improving GetLargestConsoleWindowSize
Ken Thomases wrote:
>This won't be able to work. The linker error is telling you, effectively, that you're not importing user32. However, kernel32 can't import user32. Kernel32 is at a lower level than user32. And a console program especially can't rely on user32 being loaded and initialized to satisfy the request you're making. Regards, Ken
Eric Pouech wrote:
>> actually the correct fix would be to transfer this computation to wineconsole (which already imports user32), but thats' not a really trivial task
So, if wineconsole imports user32 to run console programs, that explains why a generic program using SystemParametersInfo or GetSystemMetrics is able to compile and run correctly, yes? For example:
---
#include <windows.h>
#include <winuser.h>
#include <stdio.h>
main(void)
{
RECT workarea;
SystemParametersInfo(SPI_GETWORKAREA, 0, &workarea, 0);
int screen_x = workarea.right;
int screen_y = workarea.bottom;
printf("Your screen resolution is %d x %d pixels.\n", screen_x, screen_y);
}
---
Anyway, if I understand you correctly, the computations would need to be moved to programs/wineconsole (wineconsole.c).
Hugh
More information about the wine-devel
mailing list