|
Why do you need separate thread for each of you files? If I did not miss anything, for the same file there are no asynchronies actions possible, all threads have to wait for each other. Alternative solution would be to start thread for each of the files. Inside of the thread call the function for each action.
thread1
----"abc"------
| fL fP |
| \ / \ |
| fA\ fS/ fC\ |
| \ / \ |
| fM fW |
---------------
thread2
----"xyz"------
| fL fP |
| \ / \ |
| fA\ fS/ fC\ |
| \ / \ |
| fM fW |
---------------
thread3
----"bla"------
| fL fP |
| \ / \ |
| fA\ fS/ fC\ |
| \ / \ |
| fM fW |
---------------
|
|
|
|
|
Action-S and Action-A only wait for each other when accessing the file in memory. Then (if there are only these two threads), they can go about their business independently.
|
|
|
|
|
then use something like
HANDLE hEvent = CreateEvent(0, TRUE, TRUE, "abc");//note that we use filename to name the event
//just in case
if(WaitForSingleObject(hEvent, INFINITE) == WAIT_OBJECT_0 && ResetEvent(hEvent))//lock event on your behave
{
//... do your staff
SetEvent(hEvent);//let somebody else to continue
}
|
|
|
|
|
If you're just going to lock access,
you really want a mutex there though.
HANDLE hMutex=CreateMutex(0,FALSE,Filename);
WaitForSingleObject(hMutex,INFINITE);
ReleaseMutex(hMutex);
|
|
|
|
|
Unless you are using multiple processes you want to use a critical section, not a mutex. cs are much faster.
Neville Franks, Author of ED for Windows. www.getsoft.com
Make money with our new Affilate program
|
|
|
|
|
Yeah, completely correct. As further overkill, the example
used a named object. I don't know if it really matters as
much as I am reluctant to create named objects when an
unnamed one will do, but I always prefer to limit my
exposure.
(oh yeah, which I did not do in that ex. )
|
|
|
|
|
I agree, event seemed like a simple alternative
|
|
|
|
|
I want Browse my dirs and open a text file (*.txt) and will view on my SDI Project.
On Editview is not Problem but by Listview Projekt is a Problem
I need a function to get a text file in SDI projekt
I need your help
THX.
|
|
|
|
|
You want to view the contents of a text file in a ListView?
Whoever said nothing's impossible never tried slamming a revolving door!
|
|
|
|
|
I will Open a Text File in MDI or SDI Projekt an view it.
the Text list will lock be after so
exemple of a Text File
DATE............TIME....LONG
03.01.03........18:45...00:03:42
05.01.03........19:11...00:04:06
08.01.03........19:29...00:01:32
09.01.03........15:56...00:04:52
later will be look that
THX
|
|
|
|
|
You will have to create a function to parse the text file to pull out those values then you will have to insert them into the correct rows and columns in your list..
There are plenty of articles on how to use the list control here at codeproject. If I just posted code you wouldn't learn anything. Try to do this by following examples and reading. If you get stuck post your problem and some code that you have tried and anyone would be glad to help you.
Rob
Whoever said nothing's impossible never tried slamming a revolving door!
|
|
|
|
|
I have a file (it's an mpg), that I want to give it to few people..put it on their pcs, but I want to disallow them from coping it any further. I was thinking about some kind of program, that I could put on their pcs that would monitor the state of file.
Is there any method (or way) of programmaticaly checking it? if they attempt to copy it?
thanks.
_ra
|
|
|
|
|
short of shipping custom decoder/viewer there is not much you can do
|
|
|
|
|
No. You'll just have to tell them to not do it and trust that they won't.
Regards,
Alvaro
Quitters never win. Winners never quit. But those who never win and never quit are idiots. -- despair.com
|
|
|
|
|
Do you work for the MPAA or RIAA by any chance?
You can pick your friends, and you can pick your nose, but you can't pick your friend's nose.
|
|
|
|
|
no i don't work for any of those.
it's because someone at some office paid for some educational video or something (i'm not sure about details), and fears that if he gives it to his employees it will end up being copied all over the place and stuff liked that.
so, he asked if there was anything that could be done.
now, i was thinking about some shell extenstion perhaps, there is something that can intercept when you try to copy a file and then check for a file name and delete it.
_ra
|
|
|
|
|
You can,
Bundle the media into an executable which plays the media and destroys itself thereafter. (Self destruction isn't easy, but not impossible either ) Of course that doesn't prevent people from making copies of it before each run. To avoid this you can hide some information in the guest computer, in the registry or somewhere indicating that this program has been run and in the next run self-destroy without playing the movie.
And besides all the buzz: Since you have given the data to someone, this person logically can do anything with it, hence s/he owns it.
|
|
|
|
|
How about using Windows Media Player/Authoring and DRM ?
, but it may be able to do what you want. I have no experience with this, so I cannot help you any further.
Bruce Duncan, CP#9088, CPUA 0xA1EE, Sonork 100.10030 Blackadder: Baldrick, have you no idea what irony is? Baldrick: Yeah, it's like goldy and bronzy only it's made of iron.
|
|
|
|
|
Is it possible to use an std::basic_string<TCHAR> as a write buffer ?
I seek for the equivalent of GetBuffer, ReleaseBuffer like in CString.
If not I have to use a TCHAR buf[1024]; works also but is not so nice.
|
|
|
|
|
strstreambuf (<strstream>)
|
|
|
|
|
Hi,
I've got a dialog with a simple listbox on it and I want my dialog class to be notified when the user rightclicks on the listbox.
TN061 says to add ON_NOTIFY to the message map:
ON_NOTIFY(NM_RCLICK, IDC_LIST1, OnListRightClick)
and add a handler function with this prototype:
afx_msg void OnListRightClick( NMHDR * pNotifyStruct, LRESULT * result );
That's what I did, but it doesn't seem to work. The handler function is never called.
Anyone?
Thanks,
ren.
|
|
|
|
|
Hello,
are you sure, that you enabled the notification of parents?
And if so, is the dialog window the parent?
To enable notification, you have to open your diolog resource and have a look at the proprties of your list control. The format tab has in the middle of the options a boolean value for notification. Make sure that this one is activated.
Hope this helps
G. Steudtel
Even dwarves started small.
|
|
|
|
|
Thanks but no luck,
The Notify property was enabled and the dialog is indeed the parent. (I checked with: m_cMyListCtrl.GetParent()->m_hWnd == this->m_hWnd )
|
|
|
|
|
Make sure the object ID is correct and refers to the corresponding list object. Recheck.
Kuphryn
|
|
|
|
|
I have seen this 'failure to comply' before.
Even after quadruple checking everything.
I ended up catching the right click in the control and 'manually' posting the message to the parent. Now it works fine.
A little extra work to make a derived CListBox that catches the right-click, but that is what I really needed.
C++/MFC/InstallShield since 1993, breathing air since 1963
|
|
|
|