|
changing the clock in windows does change the bios time..
i think what he may be asking is if it is 9:35.. and 5 minutes later someone sets the clock to 9:36, how can he tell 5 minutes went by instead of 1..
is that what your asking? if so i would think you would have to monitor the time at a constant rate.. like have a thread that checks the clock every 30 seconds.. this 30 secods would be based of the speed of the system clock..
-dz
|
|
|
|
|
Yes It does change the BIOS time . But is there anything in the BIOS which stores how many clock ticks have passed since it was manufactured then relatively we can get the current time is that so ?
Please reply t it
Samir Sood
|
|
|
|
|
May GetTickCount() solve the problem ? Do you only need a base time ?
~RaGE();
|
|
|
|
|
SamirSood wrote:
But is there anything in the BIOS which stores how many clock ticks have passed since it was manufactured
No there is not.
John
|
|
|
|
|
SamirSood wrote:
Is there any Function in MFC through which i can get the bios time.
No.
So, how is Win16-land nowadays?
|
|
|
|
|
Guys,I have got few problems with classes.Could you help in most of these?
I have a few custom classes ,some deriving from MFC and others just generic classes.I want to convert them all into dll.I know how to declare and use functions from dll but donot know to create them with classes.
How to create them?
Also,how can I make my custom classes show in the class wizard?
Thirdly,some of these classes are embedded in others and there is a final class that is derived from one of the classes.In terms of memory and other things,is MFC container reliable or is STL container reliable to hold the final class.
Lastly,does mixing STL and MFC cause any exceptions?Is it good to mix them?
That's it!!!Waiting.
|
|
|
|
|
To export classes from .dll, you need to mark them as __declspec(dllexport). To import, you'll need __declspec(dllimport). Since the specifiers go to .h files, you'll need a way to mark them as exported when compiling .dll, and imported when using .dll in other project. This can be easily done with preprocessor:
#if BUILDING_MY_DLL
#define EXPORTED __declspec(dllexport)
#else
#define EXPORTED __declspec(dllimport)
#endif
class EXPORTED MyClass
{
};
I'm usually inserting #if/#endif stuff in special .h file included before any exported class declaration.
BUILDING_MY_DLL should be defined in Project Settings, C++ category, Preprocessor section. Of course, it cannot be defined when you're just using .dll in other project.
Brendan O`Connor wrote:
Lastly,does mixing STL and MFC cause any exceptions?Is it good to mix them?
You can mix them. Is it good? It depends who you'll ask. If it works for you, go with it.
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Brendan O`Connor wrote:
Lastly,does mixing STL and MFC cause any exceptions?Is it good to mix them?
Since the other questions have been answered, I will add a little tidbit to your last question. Since you are talking about exposing/exporting classes from DLLs, you should be aware that exposing/exporting STL collections across DLL boundaries may cause you problems, due to the way that (some) STL classes use static members.
These STL classes that will have problems (as well as some workarounds) are detailed in the MSDN Knowledge Base.
Note that under some situations, the collections will seem to work fine for a while, and then may just start to fail for no obvious reason. Because of that simple fact, never assume that "it works" is a reason to beleve that "it works well", or "it's correct".
(IOW, never "go with" something just because "it works", unless you can explain why it works.)
Peace!
-=- James.
"Some People Know How To Drive, Others Just Know How To Operate A Car."
(Try Check Favorites Sometime!)
|
|
|
|
|
James R. Twine wrote:
IOW, never "go with" something just because "it works", unless you can explain why it works
How many users of MFC and STL can explain how they work?
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Tomasz Sowinski wrote:
How many users of MFC and STL can explain how they work?
I believe you should read my comments again; I wrote: "unless you can explain why it works". Why something works is much different than How something works. For example, I can briefly explain why a plane is a better choice for getting to Japan than a car is, without having to get into properties of lift or how an piston-based ICE works.
And, all of the genuinely competent developers that I know can explain how MFC's CWnd -based classes work, how the handle lookups are done, the situations when CWnd::GetDlgItem(...) will return a pointer to a "real" object, and when it will just return a pointer to a temporary CTempWnd object instead, why some care needs to be taken when using these classes across threads, etc, which covers the how quite nicely.
I would have to guess that most of the people answering questions here could do the same as well, or at least know their limitations, otherwise they risk giving out incorrect information to others... It would be very depressing to find out that this was not true.
Peace!
-=- James.
"Some People Know How To Drive, Others Just Know How To Operate A Car."
(Try Check Favorites Sometime!)
|
|
|
|
|
Did you have any further issues?
Peace!
-=- James.
"Some People Know How To Drive, Others Just Know How To Operate A Car."
(Try Check Favorites Sometime!)
|
|
|
|
|
No - you've made your point clear.
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Hi!
I can't build with VC++ 7.0 the project that use DAO. The VC++ 6.0 build correctly the same project. I receive the following error message:
fatal error LNK1120: 1 unresolved externals
"public: class ATL::CStringT > > __thiscall CdbLastOLEError::GetDescription(void)"
Do you now somebody the resolution?
Thanks
Feri
|
|
|
|
|
Okay
I finally found some samples on MSDN that show how we can save an bitmap from an HBITMAP
The problem is it's saving it in 24 bits (
Is there anyway that I can change the bits/pixel setting of my DC?
Or say once I have the bitmap ready in memory, is there anyway by which I can change it from a 24 bit bitmap to a 1 bit bitmap???
Regards
Nish
p.s. only GDI, no GDI+
Regards,
Nish
Native CPian.
Born and brought up on CP.
With the CP blood in him.
|
|
|
|
|
Well, you can always BitBlt from 24-bit to 1-bit memory DC. But quality will be totally unacceptable. You should perform some dithering (Floyd-Steinberg error diffusion, perhaps).
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Tomasz Sowinski wrote:
Well, you can always BitBlt from 24-bit to 1-bit memory DC. But quality will be totally unacceptable. You should perform some dithering (Floyd-Steinberg error diffusion, perhaps).
Quality is not a problem. The bitmap consists of just black and white.
I draw it on my CView using *blush* SetPixel
Here is the code I am using :-
HDC hDC;
hDC = ::GetDC(m_hWnd);
HDC hMemDC = CreateCompatibleDC(hDC);
RECT r;
::GetClientRect(m_hWnd,&r);
SIZE size;
size.cx = r.right-r.left;
size.cy = r.bottom-r.top;
HBITMAP hBitmap = CreateCompatibleBitmap(hDC, size.cx, size.cy);
if (hBitmap)
{
HBITMAP hOld = (HBITMAP) SelectObject(hMemDC, hBitmap);
BitBlt(hMemDC, 0, 0, size.cx, size.cy, hDC, 0, 0, SRCCOPY);
SelectObject(hMemDC, hOld);
if(m_hBitmap)
DeleteObject(m_hBitmap);
m_hBitmap = hBitmap;
DeleteDC(hMemDC);
::ReleaseDC(NULL, hDC);
}
I guess I should change my CreateCompatibleDC to #CreateDCwith1Bits#!
But how do I do that? Is there any GDI function for that?
Regards,
Nish
Native CPian.
Born and brought up on CP.
With the CP blood in him.
|
|
|
|
|
If you replace hDC with hMemDC in a call to CreateCompatibleBitmap, hBitmap will be monochrome. There's some rule which GDI uses when blitting to monochrome DCs - I don't remember exactly, but it may be related to current text color. You'll have to experiment a little bit or browse through MSDN or CP.
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Tomasz Sowinski wrote:
If you replace hDC with hMemDC in a call to CreateCompatibleBitmap, hBitmap will be monochrome. There's some rule which GDI uses when blitting to monochrome DCs - I don't remember exactly, but it may be related to current text color. You'll have to experiment a little bit or browse through MSDN or CP.
Well, it created a 1-bit bitmap. But it was all blank
I dunno what kinda stupid logic it used. Basically it was a bitmap with a lot of white and a black signature. I think 99% of the area would have been white. yet I expected it to convert that properly to a 1-bit bitmap
Now what do I do?
Nish
Regards,
Nish
Native CPian.
Born and brought up on CP.
With the CP blood in him.
|
|
|
|
|
Nish - Native CPian wrote:
Now what do I do?
Can't you use this SetPixel stuff directly on hMemDC? It would create the same thing. Getting client DC and blitting from it isn't the best way - there may be some topmost window (WinAmp, for example) floating above, etc.
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Set the background color of the source DC (the 24 bit bitmap) to the color of the color you want to be black in your monochrome bitmap.
::SetBkColor (hdcSrc, RGB (0, 0, 0));
Tim Smith
I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?
|
|
|
|
|
Hi!
I try to put MicrosoftAccessDriver version 4.00.6019.00 on Windows98 and recieve a message
The setup routines for Microsoft Access Driver ODBC driver could not be loaded due to system error code 1157.
Tell me,please,what is it means.
May be that i can not put driver with last version on Windows98 and Windows95?
Help me,please!!!
|
|
|
|
|
Check article Q260558 on support.microsoft.com.
|
|
|
|
|
Hey,
So this is what I want to do: I work for a video game company, and I am working on the installer for the game. What they want is a graphically attracting version of the installer made with installShield (you know, weapons, fires, movies, etc.). I own installShield professional 5.5, and it allows you to display movies in the background, but I want to actually customize my own dialog boxes, while still keeping the functionality of installShield. I tried to use the tutorial about adding DLL's to installShield, but I do not know how to make an MSI file in installShield, or much less what an MSI file is.
Any help would be GREATLY appreciated.
Thanks,
Tali
|
|
|
|
|
MSI stands for MicroSoft Installer. An .msi file is one of the files that go with the new Windows Installer. Check out msdn.microsoft.com for more info.
|
|
|
|
|
As in subject!
Nish
Regards,
Nish
Native CPian.
Born and brought up on CP.
With the CP blood in him.
|
|
|
|