|
Error no 5 while reading using ReadFile
|
|
|
|
|
You are saying You got CreateFile correct, by getting and handle now facing problem with ReadFile?
Isnt it?
Please read this article, it will help u [^]Величие не Бога может быть недооценена.
|
|
|
|
|
Thank you Adam but no luck to find solution.
|
|
|
|
|
you arent accessing a file you try to open a drive. If you want to access the files you first the FindFile-API. Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
Please check the error you are getting using GetLastError([^]).
So whether CreateFile is returning 0?
Please give more info.Величие не Бога может быть недооценена.
|
|
|
|
|
|
Please see my above reply. Величие не Бога может быть недооценена.
|
|
|
|
|
I have a control bar that houses a tab control which displays 'dialogs' on each of three tabs.
I want to update one of the tabs based on what happens in my main app window. I don't want to bombard my control bar with thousands of update messages everytime I do anything, so I was looking for a way to update it when it gets focus.
However, I don't really want to handle a get focus message on every dialog control on the tab, just to run an update. Is there no general way to see if a control bar is 'active'? (in this case, whenever focus moves to any control on any tab on the bar).
Do I have to put code in my main frame to watch for mouse clicks inside the client rect of the bar?
************************************
I reached an adequate compromise with an OnMouseActivate on my control bar tab, another OnMouseActivate in my view and a 'needs upadte' boolean member in the tab too.modified on Thursday, March 4, 2010 3:40 PM
|
|
|
|
|
OK, a combination of OnParentNotify and ModifyStyleEx(WS_EX_NOPARENTNOTIFY, 0) is doing the trick, but its a bit ugly.
Now I just need to detect when the whole thing loses focus....anyone?
|
|
|
|
|
Hmmm... OnMouseActivate might be even better...
|
|
|
|
|
hi u can us parentnotify... but why are you answering your own que? if you got the solution jst edit ur post title...
|
|
|
|
|
I only have a partial solution - I can use OnMouseActivate to detect activation, but I also need to detect "focus" leaving the dialog / tab.
I thought I could do it with TrackMouseEvent and OnMouseLeave but that doesn't work - since you get a 'dialog leave' event when any of the dialog controls are activated.
When (if?) I solve it, I will modify the original post...
|
|
|
|
|
Hi,
I have a C++ exe which crashes intermittently on Windows XP using MFC 7.1. In the eventvwr I can find an application error saying that "Faulting application tci_console.exe, version 0.0.0.0, faulting module tci_console.exe, version 0.0.0.0, fault address 0x000a09be." tci_console.exe is the exe name that crashes and is the C++ exe. Sometimes I also get the following error in the eventvwr "Faulting application tci_console.exe, version 0.0.0.0, faulting module msvcr71.dll, version 7.10.3052.4, fault address 0x000017fb." Please help me out as I am stuck with this problem for last 2 months. Also please note that the addresses are always constant that are present in th error messages.thanks,
dhina
|
|
|
|
|
Can't you debug your exe or ask the people who programmed the exe to do it ? Watched code never compiles.
|
|
|
|
|
If you can't use the Visual Studio debugger I suggest configuring Dr. Watson - it might help you find where the process is crashing. Take a look at http://support.microsoft.com/kb/308538[^] for how to set it up.
|
|
|
|
|
Elementary, my dear Watson!
|
|
|
|
|
Hello all. When I debug a Visual C++ 9 application and want to see a CString variable's value in the watch tab, it only displays a memory address. If I wish to see the string, I have to select CString's m_pszData member.
I remember that one could customize Intellisense so that it would show some specific value of a certain class. I've been googling for a while but haven't found something useful: I only get references to DebuggerDisplayAttribute class, but since that's a managed class I can't use it.
So, does anybody have a clue on how to configure Intellisense?
Thanks in advance.
|
|
|
|
|
Maybe you can edit the autoexp.dat file (somewhere in the VS folder) to do that ? (just google for that). Watched code never compiles.
|
|
|
|
|
Yep, that did the trick. I found this article[^] that explains how to do it. And although it references VC6 it works quite well in VC9, the only difference being that autoexp.dat file is located at C:\Program Files\Microsoft Visual Studio 9.0\Common7\Packages\Debugger (in my machine, at least).
Thanks for the help!
|
|
|
|
|
Hi,
After making arbitrary decisiones for a long time, I've decide to ask it once and for all.
Suppose you have a bool value (WasFooEverCalled), that indicates whether some function Foo() was ever called or not. Suppose 'Foo()' is going to be called millions of times. What is more efficient:
1. Simply assigning 'WasFooEverCalled = true;' whenever Foo is called().
2. Whenever 'Foo()' is called, check whether 'WasFooEverCalled' is currently false, and if it is, assign 'WasFooEverCalled = true;'.
What I'm actualy asking is what is more CPU expensive, assigning a bool value, or checking if a bool value is something.
// Here's the code:
bool WasFooEverCalled = false;
void Foo()
{
WasFooEverCalled = true;
if ( ! WasFooEverCalled )
WasFooEverCalled = true;
}
Thanks!
|
|
|
|
|
void f()
{
...
}
class CF
{
public:
CF() { f(); };
};
void usage()
{
static CF onlyOnce();
}
I have no answer for your last question, sorry Check your definition of Irrationality[ ^]
1 - Avicenna
5 - Hubbard
3 - Own definition
|
|
|
|
|
I think both should use the same time. In general reading is faster then writing,
but both calls should be around 2-4 cycles on the cpu. So even if
reading would be faster then writing (assume 1 cpu cycle), you have to call this
function around ~2.5-3 billion times to have a differ of one second.
-> Conclusion:
If you really need that performance than you are using the wrong language and not
the wrong option.
At least:
Use option b, because if this function is called very often, the cpu also should have
a higher cache hit rate for this and the cpu doesn't have to do a memory access.Greetings
Covean
|
|
|
|
|
Ofer Gross wrote: What I'm actualy asking is what is more CPU expensive, assigning a bool value, or checking if a bool value is something.
If you'll look as the assembly code, you likely find that the latter takes one more instruction."One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
As David already suggested, option A, namely
mov BYTE PTR ?WasFooEverCalled@@3_NA, 1 ; WasFooEverCalled
looks more efficient than option B
cmp BYTE PTR ?WasFooEverCalled@@3_NA, 0 ; WasFooEverCalled
jne SHORT $LN4@Foo
; Line 702
mov BYTE PTR ?WasFooEverCalled@@3_NA, 1 ; WasFooEverCalled
$LN4@Foo:
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
You both should be right if you just look at the count of commands the cpu has to execute.
But as I mentioned before, there are more things that can effect the efficiency.
- cache hits
- (maybe) no write-back phase
- instruction order to process
...
At least:
I think this optimization stands in no relation to the time spend thinking about it.Greetings
Covean
|
|
|
|