In my code I would like to use the constant (define in WinGdi.h)
CLEARTYPE_QUALITY
But that doesn't work!!
(it's for CreateFont(...))
A quick look at the header reveal that:
== WinGdi.h fragment ===
#if (_WIN32_WINNT >= 0x0500)
#define CLEARTYPE_QUALITY 5
#endif
===================
Now I wonder, how do I define _WIN32_WINNT ?
- should I just go into Project Properties => Configuration => C/C++ /
Preprocessor => Definition
and put some random value?
- beside how will this work?
generally speaking my product work on Windows 2000 & XP and this constant is
not a bit flag, it's a number (other constant are 1,2,3,4)
Any tips? advice? ideas? suggestion? 9 8879
Hi Lloyd! A quick look at the header reveal that: == WinGdi.h fragment === #if (_WIN32_WINNT >= 0x0500) #define CLEARTYPE_QUALITY 5 #endif ===================
Now I wonder, how do I define _WIN32_WINNT ? - should I just go into Project Properties => Configuration => C/C++ / Preprocessor => Definition and put some random value?
It should not be random...
See: Using the Windows Headers http://msdn.microsoft.com/library/en...ws_headers.asp
If you have a current PSDK, you should set "NTDDI_VERSION"
generally speaking my product work on Windows 2000 & XP and this constant is not a bit flag, it's a number (other constant are 1,2,3,4)
The define
NTDDI_VERSION=NTDDI_WIN2K
in your project settings
Or (for older PSDKs):
_WIN32_WINNT=0x0500
WINVER=0x0500
--
Greetings
Jochen
My blog about Win32 and .NET http://blog.kalmbachnet.de/
"Lloyd Dupont" <net.galador@ld> wrote in message
news:eM**************@TK2MSFTNGP02.phx.gbl... In my code I would like to use the constant (define in WinGdi.h) CLEARTYPE_QUALITY But that doesn't work!! (it's for CreateFont(...))
A quick look at the header reveal that: == WinGdi.h fragment === #if (_WIN32_WINNT >= 0x0500) #define CLEARTYPE_QUALITY 5 #endif ===================
Now I wonder, how do I define _WIN32_WINNT ? - should I just go into Project Properties => Configuration => C/C++ / Preprocessor => Definition and put some random value?
surely not a random value.
- beside how will this work? generally speaking my product work on Windows 2000 & XP and this constant is not a bit flag, it's a number (other constant are 1,2,3,4)
Any tips? advice? ideas? suggestion?
#define _WIN32_WINNT 0x0501
in stdafx.h will do best.
"Egbert Nierop (MVP for IIS)" wrote: generally speaking my product work on Windows 2000 & XP and this constant is not a bit flag, it's a number (other constant are 1,2,3,4)
Any tips? advice? ideas? suggestion?
#define _WIN32_WINNT 0x0501
in stdafx.h will do best.
Keep in mind that if you are defining _WIN32_WINNT to a specific value
because an API requires it, it is because that API requires at least that
version of Windows to run.
Therefore, if your product must work on Windows 2000, and you are using an
API that requires at least Windows XP (which is what setting _WIN32_WINNT to
0x0501 means), then you are going to have a problem later on when you try to
run your product on Windows 2000.
For your particular situation, ClearType wasn't introduced until WinXP.
Depending on what you are doing with ClearType, you may need to write code to
ascertain which version of Windows is running and to take action accordingly.
Sean
Thanks for addressing the second part of my question!
I though along those lines:
all these constants are just increasing number (1,2,3,4 and 5 for cleartype)
not only it should be available for windows 2000 in a service pack but,
hopefully, the function should gracefuly either of:
-use a known lower number
-use default DRAFT quality instead....
Anyway, any tip on how to write a simple test of the current OS?
thanks!
"Sean M. DonCarlos" <se********@newsgroups.nospam> wrote in message
news:96**********************************@microsof t.com... "Egbert Nierop (MVP for IIS)" wrote:
> generally speaking my product work on Windows 2000 & XP and this > constant > is not a bit flag, it's a number (other constant are 1,2,3,4) > > Any tips? advice? ideas? suggestion?
#define _WIN32_WINNT 0x0501
in stdafx.h will do best.
Keep in mind that if you are defining _WIN32_WINNT to a specific value because an API requires it, it is because that API requires at least that version of Windows to run.
Therefore, if your product must work on Windows 2000, and you are using an API that requires at least Windows XP (which is what setting _WIN32_WINNT to 0x0501 means), then you are going to have a problem later on when you try to run your product on Windows 2000.
For your particular situation, ClearType wasn't introduced until WinXP. Depending on what you are doing with ClearType, you may need to write code to ascertain which version of Windows is running and to take action accordingly.
Sean
"Lloyd Dupont" <net.galador@ld> wrote in message
news:uI**************@TK2MSFTNGP05.phx.gbl... Anyway, any tip on how to write a simple test of the current OS?
The short answer to the question is to say that you call GetVersionEx().
But you have to understand that if you build an application so that it only
runs on 2K or better, and if someone tries to launch that binary on NT4 say
(a platform which should be retired IMO) that your application may not ever
get to the point of calling GetVersionEx().
An application will fail to load if it makes implicit reference to a
function in a DLL which is not present at load time.
Regards,
Will
"William DePalo [MVP VC++]" <wi***********@mvps.org> wrote in message
news:%2****************@TK2MSFTNGP05.phx.gbl... "Lloyd Dupont" <net.galador@ld> wrote in message news:uI**************@TK2MSFTNGP05.phx.gbl... Anyway, any tip on how to write a simple test of the current OS? The short answer to the question is to say that you call GetVersionEx().
But you have to understand that if you build an application so that it only runs on 2K or better, and if someone tries to launch that binary on NT4 say (a platform which should be retired IMO) that your application may not ever get to the point of calling GetVersionEx().
An application will fail to load if it makes implicit reference to a function in a DLL which is not present at load time.
If the DLL is not present, the application fails to load. If the DLL is
present but an older version so the function is missing, the application
loads and only fails if it tries to call that function, correct? Regards, Will
"Ben Voigt" <rb*@nospam.nospam> wrote in message
news:ew**************@TK2MSFTNGP05.phx.gbl... If the DLL is not present, the application fails to load. If the DLL is present but an older version so the function is missing, the application loads and only fails if it tries to call that function, correct?
No.
At least not if you link the DLL implicitly. If you do that, at runtime the
loader will display a message box which says something like this:
"The procedure entry point XXXX could not be located in dynamic link
library YYYY".
Regards,
Will This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: leroybt.rm |
last post by:
I don't understand why this does not work:
<FILE1> test1.py
#Import Packages
import string
#
data=0
data=data+1
|
by: Christian Schmidbauer |
last post by:
Hello!
I prepare my XML document like this way:
-------------------------------------------------------
PrintWriter writer;
Document domDocument;
Element domElement;
// Root tag
|
by: Diandian Zhang |
last post by:
Does anyone have an idea, how to do it? Thanks in advance!
|
by: H. S. |
last post by:
Hi,
I am trying to compile these set of C++ files and trying out class
inheritence and function pointers. Can anybody shed some light why my
compiler is not compiling them and where I am going...
|
by: Sidney Cadot |
last post by:
Hi all,
In a discussion with Tak-Shing Chan the question came up whether the
as-if rule can cover I/O functions. Basically, he maintains it can, and
I think it doesn't.
Consider two...
|
by: Don Wash |
last post by:
Hi All!
I'm getting the following Error:
No DLLs has been compiled yet and nothing in the \bin directory. So it is
not the versioning problem or anything like that.
And here are the...
|
by: tomy |
last post by:
Hi Group:
The confusing code is as below:
//-------------------------------------------------
#if
#define FOO foo
#else
#define FOO foobar
#endif...
|
by: Steven.Xu |
last post by:
hi everybody,
i am useing some classes which in System.Xml to deal with xml document. what
can i do if the document include "<" or ">"?
Thanks.
|
by: ismailc |
last post by:
Hi, I need help please.
Update system to to new version & moved on to .Net2
But now my code that worked in my .Net1 xslt does not work.
.Net1 fine:
<xsl:stylesheet...
|
by: lllomh |
last post by:
Define the method first
this.state = {
buttonBackgroundColor: 'green',
isBlinking: false, // A new status is added to identify whether the button is blinking or not
}
autoStart=()=>{
|
by: DJRhino |
last post by:
Was curious if anyone else was having this same issue or not....
I was just Up/Down graded to windows 11 and now my access combo boxes are not acting right. With win 10 I could start typing...
|
by: NeoPa |
last post by:
Hello everyone.
I find myself stuck trying to find the VBA way to get Access to create a PDF of the currently-selected (and open) object (Form or Report).
I know it can be done by selecting :...
|
by: NeoPa |
last post by:
Introduction
For this article I'll be using a very simple database which has Form (clsForm) & Report (clsReport) classes that simply handle making the calling Form invisible until the Form, or all...
|
by: Teri B |
last post by:
Hi, I have created a sub-form Roles. In my course form the user selects the roles assigned to the course.
0ne-to-many. One course many roles.
Then I created a report based on the Course form and...
|
by: isladogs |
last post by:
The next Access Europe meeting will be on Wednesday 1 Nov 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM)
Please note that the UK and Europe revert to winter time on...
|
by: NeoPa |
last post by:
Introduction
For this article I'll be focusing on the Report (clsReport) class. This simply handles making the calling Form invisible until all of the Reports opened by it have been closed, when it...
|
by: isladogs |
last post by:
The next online meeting of the Access Europe User Group will be on Wednesday 6 Dec 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM).
In this month's session, Mike...
|
by: GKJR |
last post by:
Does anyone have a recommendation to build a standalone application to replace an Access database? I have my bookkeeping software I developed in Access that I would like to make available to other...
| |