|
How can i implement one function to get the file size of a file which takes pointer to the file path?Please help..
|
|
|
|
|
Hi
Using Win32, you can use FindFirstFile and inspect the WIN32_FIND_DATA structure returned from that (and call FindClose when you leave).
In .NET, that information is available from the FileInfo class.
HTH
Martin
|
|
|
|
|
Why not use GetFileSize() ?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
The function should take only the constant pointer to the path of the file..
|
|
|
|
|
Ok, what's wrong with:
DWORD SizeOfFile( LPCTSTR lpszFile )
{
DWORD dwSize = 0;
HANDLE hFile;
hFile = CreateFile(lpszFile, 0, 0, NULL, OPEN_EXISTING, ...);
if (hFile != INVALID_HANDLE_VALUE)
{
dwSize = GetFileSize(hFile, NULL);
CloseHandle(hFile);
}
return (dwSize);
}
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Try
CFile myFile(lpszFileName, CFile::modeRead);
int len = myFile.GetLength();
Some people see things that are and ask, Why? Some people dream of things that never were and ask, Why not? Some people have to go to work and don't have time for all that ...
Author: George Carlin
|
|
|
|
|
Hello!
I've got a property page, containing a tab view. The tab pages are a bit brighter than the normal dialogs, which seems to be correct. But unfortunately all the static controls in this tab page have the standard gray color, i.e. the one of the dialogs and not the one of the tab page.
How can I make the statics look correct?
Best regards
|
|
|
|
|
Hi
Try setting the static controls' Transparent property to True in the Resource Editor.
HTH
Martin
|
|
|
|
|
I've tried this, but the static looks exactly the same as before, with the darker gray...
Any other ideas?
Thanks and best regards
|
|
|
|
|
Oh, btw, it's not only the statics. Also the buttons (edges), checkboxes and radios all look incorrect, all have that darker gray... The only things that look correct are the edit controls and the progress controls...
Best regards
|
|
|
|
|
OK
What are you using? VC6, VC7?
Is this Tab control MFC, eg. with CPropertySheet/CPropertyPage.
Is is dynamically created, or just the standard controls dragged from the toolbox onto the dialog in the resource editor?
Does this happen with all tab/property pages on your machine, or just the one in your app?
Martin
|
|
|
|
|
Martin Koorts wrote:
What are you using? VC6, VC7?
VC6, it's a MFC project.
Martin Koorts wrote:
Is this Tab control MFC, eg. with CPropertySheet/CPropertyPage.
I'm not using the CPropertySheet/CPropertyPage classes.
Martin Koorts wrote:
Is is dynamically created, or just the standard controls dragged from the toolbox onto the dialog in the resource editor?
It's just dragged from the toolbox into the dialog, using the resource editor.
I'm handling the click messages on the tabs myself, to display the correct dialogs / dialog elements. I'm not using any third-party classes to do this.
Martin Koorts wrote:
Does this happen with all tab/property pages on your machine, or just the one in your app?
It just happens in my application. In the desktop display properties for example it looks correctly.
Any ideas??
Thanks for your reply and best regards
|
|
|
|
|
What happens if you create a Dialog-based MFC app using the wizard, with the same controls?
Sorry if this messes you about, but that's just what I would try.
Martin
|
|
|
|
|
Exactly the same...
- Create new MFC dialog project
- Drag-n-drop a tab view into the dialog
- Drag-n-drop a static onto the tab view
- Add a XP manifest (resource 24/1) to the project and manually add InitCommonControls()
- Build and run
The statics have the wrong background.
Best regards,
Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
(doesn't work on NT)
|
|
|
|
|
The problem that you have is that the static controls are taking the background colour of your dialog rather than the tab control. I have gotten around this problem in the past by writing an owner drawn static control.
Here[^] is a good example of an owner drawn static. It may be a bit too much for what you are doing, however you could use it for ideas.
Ant.
I'm hard, yet soft. I'm coloured, yet clear. I'm fruity and sweet. I'm jelly, what am I? Muse on it further, I shall return! - David Walliams (Little Britain)
|
|
|
|
|
Ok, fine... But for the rest? What do I do with all the other controls that are drawn incorrectly, too? Like buttons, checkboxes and radios?
Thanks and best regards,
Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
(doesn't work on NT)
|
|
|
|
|
Um, sorry about that, I should have read you post a second time to see that you do indeed mension the other controls.
Since posting Shog9 has posted a reference to an article that will solve your problem.
Ant.
I'm hard, yet soft. I'm coloured, yet clear. I'm fruity and sweet. I'm jelly, what am I? Muse on it further, I shall return! - David Walliams (Little Britain)
|
|
|
|
|
Have you tried altering the z-order of the controls (i.e. tab order) ?
Ant.
I'm hard, yet soft. I'm coloured, yet clear. I'm fruity and sweet. I'm jelly, what am I? Muse on it further, I shall return! - David Walliams (Little Britain)
|
|
|
|
|
See this article for a rather complex (but effective) method of correcting this. Then see the comments following the article for several easier methods.
Shog9
I'm not the Jack of Diamonds... I'm not the six of spades.
I don't know what you thought; I'm not your astronaut...
|
|
|
|
|
I like it, nice simple solution within the comments. Thanks
Ant.
I'm hard, yet soft. I'm coloured, yet clear. I'm fruity and sweet. I'm jelly, what am I? Muse on it further, I shall return! - David Walliams (Little Britain)
|
|
|
|
|
Many thanks!!!
Best regards,
Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
(doesn't work on NT)
|
|
|
|
|
Hi
suspend just pauses the thread.
You'll have to stop it by using an event, with your worker thread looking out for it and elegantly stopping as soon as it becomes signalled. Alternatively you can call Abort on the thread, but make sure the thread handles the exception thrown from this.
HTH
Martin
|
|
|
|
|
doneirik wrote:
Problem: So far I have a 2-threaded Windows Forms Application. When I abort the program by clicking the x-button I cannot recompile the program without restarting my computer. I get an error message saying:
fatal error LNK1104:Cannot open file C:.....program.exe
That's because the main thread is still running, even though there is no UI.
Read this article and this article for more on threads and how to terminate them.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
I want to create and drawn to CScrollView that is invisible from the user. Sould I show it using a ShowWindow(SW_HIDE)? Will this permit me to draw on it?
|
|
|
|
|
Hi
Yes, the standard CWnd-derived behaviour (such as ShowWindow) will work - you'll have to ensure the focus isn't set to the invisible view if you want the keyboard active, and make sure the window isn't displayed by accident elsewhere, such as a custom OnSize handler, etc.
And yes, I believe you can still process OnPaint, OnDraw messages even if the window is not visible - as you can with most messages. I would just not expect the OS to initiate these (WM_PAINT messages) as the window would not require painting in this state. That said, calling UpdateWindow forces a visit of the paint routine (SendMessage(WM_PAINT, ...) I believe).
Anyway, let me leave you to your devices....
HTH
Martin
|
|
|
|