|
Hi Sir,
I am 2 years 4 months experienced person in OOPs Concepts, C++, VC++, MFC. But I am a diploma holder( 86.43 %).
|
|
|
|
|
My code was running with VS2010 but today (almost after 15 days) I tried to compile and getting error
Error 1 error MSB6006: "CL.exe" exited with code 1. C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets 147
I think it not code related error, its with VS2010. Can you please help to solve this?
|
|
|
|
|
Do you have AV software disabled? Are you running VS2010 as administrator?
"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
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
My application must work on a remote computer with ports 500 and
4500 on UDP-protocol, but it doesn't work.
I tried to test these ports by this udp-server.
http://www.codeproject.com/Articles/11740/A-simple-UDP-time-server-and-client-for-beginners
Antivirus is switched off, Firewall too.
When I start udp-server as "timeserver 500" or as "timeserver 4500"
I get message: "Could not bind name to socket".
But with other ports it works. Why? (In the source code I do not
see any restrictions for port-numbers.)
On my local home computer - the same behavior!
Can anyone explain this?
|
|
|
|
|
|
|
|
std::list<SMyFrameData*> m_FrameList;
CCriticalSection m_FrameListLock;
...
CTempLock tempLock(&m_FrameListLock);
if (m_FrameList.size() == 0) return 0L;
pFrameData = m_FrameList.front();
m_FrameList.pop_front();
... Decoder the frame data
SMyFrameData* pNewFrame = new SMyFrameData();
pNewFrame->lpData = pBuf;
pNewFrame->iSize = iSize;
CTempLock (&(pProcess->m_FrameListLock));
pProcess->m_FrameList.push_back(pNewFrame);
SetEvent(pProcess->m_hFrameProcessEvent);
But now there is a error happen "erators and references can become invalid." in code, pFrameData = m_FrameList.front(); I just use the CCriticalSection to avoid the conflict, but why the error happen.
|
|
|
|
|
yu-jian wrote: iterators and references can become invalid. You are capturing a pointer to the first element in the list:
pFrameData = m_FrameList.front();
But later on you push an element into the list, so your pointer is no longer pointing to the first element in the list, and may therefore not be valid.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
Some of the code in question:
std::list<SMyFrameData*> pFrameData;
There's no capturing of pointers here, pFrameData is a std::list.
Only deleting a list node invalidates an iterator to it. Having an iterator to the first node then adding to the head is not a problem, you just end up with an iterator to the second item in the list (the same is true for pointers to list items).
Steve
modified 13-Nov-12 12:10pm.
|
|
|
|
|
yes, I find that I copy wrong, now I changed it.
|
|
|
|
|
Stephen Hewitt wrote: Some of the code in question:
std::list<SMyFrameData*> pFrameData;
Sorry, where does that come in OP's question?
Text changed for test purposes.
One of these days I'm going to think of a really clever signature.
modified 14-Nov-12 8:24am.
|
|
|
|
|
The code you quoted contains that variable. You seen to be assuming it's a pointer.
Steve
|
|
|
|
|
Since the definition of that variable is not shown I assumed nothing.
[edit]
Testing the edit feature.
[/edit]
One of these days I'm going to think of a really clever signature.
modified 14-Nov-12 10:36am.
|
|
|
|
|
The definition is quoted in my post.
Steve
|
|
|
|
|
But not in OP's original, which is why I added a comment to him/her suggesting that there was something else that we are not being told.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
It was in the original but isn't now as he edited his post after reading mine.
Steve
|
|
|
|
|
The original never contained that statement and has not been modified.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
|
Well I don't think he did. If a post is edited after being created, then it gets the tag [modified] added to the title, and a date put in at the bottom, as you can see in my modified post[^], or indeed, in your first reply to me.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
I am going to edit this post.
First edit.
Second edit.
Third edit.
This post has been edited five times. There was no modified additions after the first edit, but it did appear after the second. I'm guessing there's a window within which they don't appear. As to why they don't appear on the OP's post I'm not sure. I'm not making this stuff up, the post was edited: My post contains text copied from it using the clipboard and I provided a link from the poster where he says he did. I'm not sure what more I can do to convince you.
Steve
modified 14-Nov-12 8:48am.
|
|
|
|
|
OK, I'm convinced, I just edited a recent post and the changes did not show, looks like a bug for Chris's list.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
Richard MacCutchan wrote: Well I don't think he did. If a post is edited after being created, then it gets the tag [modified] added to the title, and a date put in at the bottom, as you can see in my modified post[^], or indeed, in your first reply to me.
This does not always happen, Richard. I would say 15-20% of the time, old posts that I modify show no sign of change.
"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
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
Interesting, I have never noticed that. In my experience modified posts always show the changes.
Let's see if this edit shows up.
[edit sequence="2"]
Well that one did not show the change; maybe it's a timing issue.
[/edit]
[edit sequence="3"]
Well first and second did not show the change; maybe it's a timing issue.
[/edit]
[edit sequence="4"]
Well first, second and third did not show the change; maybe it's a timing issue.
[/edit]
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
But I use the CCriticalSection to lock the m_FrameList, when I am getting the front data from m_FrameList, no others change the m_FrameList. So the pushing an element will be done after pop data.
|
|
|
|