|
In FielProcessor()
{
new pFile = File();
delete pFile; // Error when there are nearly 25 threads. The first serval threads are OK.
}
|
|
|
|
|
Multithreading can easily be a problem. It requires a lot of thought. It is highly likely that the problem has nothing to do with FindFirstFile/FindNextFile and therefore it is unlikely you have provided enough information to allow anyone to help.
|
|
|
|
|
It is not safe to have mutiple threads messing with the same find handle as the same time. It should be safe to first construct the full path to the file and pass it to a thread like you later examples demonstrates, but you have to make sure that the memory pointed to by the filename parameter is valid for as long as the thread needs it. This is the kind of situation where "hand-off" memory can be used, either by allocating a TCHAR buffer via new[] and passing it to the thread which will later call delete[] on it, or passing a string object.
For these kinds of situations, you may want to use a pool of threads with something like an I/O Completion Port and throw processing requests at it. That way, you do not create too many threads bogging the system down (you do not want to create 1500 threads if 1500 files need to be processed), and you can adjust the number of threads in the pool depending on the resources available on the target system and/or the performance needs of the application.
You can also look into seeing if the QueueUserWorkItem(...) function is available on the target system and use it to manage the thread pool and the work to be done.
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
Hi,
Thank you for the solution. I'll have a try this method.
Best Regards,
Haifeng
|
|
|
|
|
Please help,
How can I fix this error:
Error 1 fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\include\afxver_.h 77
Many Thanx
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r
|
|
|
|
|
take project->Settings
In the cpp tab, select "Code generation" in the category tab.
Now in the "Use runtime library" combo, select "Multithreaded Dll"
save and rebuild the project.
nave
|
|
|
|
|
Thank you nave for the quick response,
My current setting for that setting is:
Multi-threaded (/MT)
And I'm using VS 2K5
But the problem still continues....
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r
|
|
|
|
|
did u try changing Multi-threaded (/MT) to Multithreaded-dll (/MD)
nave
|
|
|
|
|
My bad .... setting was: Multi-threaded (/MT)
but changed it to: Multi-threaded DLL (/MD)
and it works .... many many thanx
The only programmers that are better than C programmers are those who code in 1's and 0's.....
Programm3r
|
|
|
|
|
Just a guess - use the /MD switch?
|
|
|
|
|
Anyone has seen the start menu, there's a cool thing about it.
You can edit each menuitem position by dragging items, you can even create application links by dragging things in it, its a really cool feature.
You can edit your menu on the fly !
I've searching in the net for something like this but nothing came up, i think this would requiere a lot of codding correct me if im wrong.
Maybe on of you guys know the anwser for this little but awezome hidden abillity of the menus.
|
|
|
|
|
start menu is not a menu... start menu is created using list view
nave
|
|
|
|
|
I know its not a normal menu, but are you really shure about that, it seems a bit complex for a custom draw list view.
|
|
|
|
|
yes. its list view. i checked it by taking the class name of that window
nave
|
|
|
|
|
Check out WM_MENUDRAG and WM_MENUGETOBJECT and related messages.
|
|
|
|
|
|
Are you trying to be funny ?
You mush think that im so stupid that i dont know what MSDN is.
I appretiate your help i really do, but i believe you get the impression that im a noob here, in fact am not, i been searching the net for the last week and there's no single example on how to handle menus drag and drop operations, yes there are tons of examples on how to properly manage OLE Drag and Drop operations, and i read many of the tutorials specially the one at http://www.catch22.net/tuts/dragdrop.asp.
I also know about the existence of these two messages, but thats it, i was hoping to find something a little more concrete.
Thanks my fiend.
|
|
|
|
|
Internet explorer handles drag and drop menu items in the "Favorites" menu, you can drag items from inside the menu, or outside like the desktop, wow this is really cool, i need to get my hands on IE source code
|
|
|
|
|
Hello there,
I am trying to put my code into a ".lib" file but there is sth
going wrong. I use MSVC++6 (I also use MSVC++2005 if you prefer).
I create a "Static library project", I place my class files into,
the project, I compile (debug and release) and I get the two .lib files.
Then I create the 2nd project (let's say a dialog project) and I add the
".h" file and the ."lib" into my project. I place the
pragma comment(lib, "MyLib.lib" ) // If I remember it clearly.
into the file that uses the library code (or it's header) and then I try to
build (debug or release)... but then I get linker errors...
One of them is for :
_afx(sth_here)Nil // I don't know what this function is !
Any help would be appreciated.
kostas KEL
|
|
|
|
|
Can you post the exact error messages ?
|
|
|
|
|
Do you try adding your .lib to the project settings? or Is it your .lib path incorrect?
|
|
|
|
|
You can answer directly to sender
|
|
|
|
|
Include the library in your project settings and specify its path in Additional lib path.
|
|
|
|
|
Hi iam devolopping one project here it is required to check whether network disable or enable by clickinh the button .
#sanroop#
|
|
|
|
|
Mr. Dunn has this in his FAQ...
Internet Connected?[^]
Or, a slightly more complicated way from Edwin Eefting &
Patrick Philippot posted on CodeGuru a while ago that appears to be fairly robust
Network Connection?[^]
|
|
|
|