|
Oh. Are you running VS6? I'm running VS.NET.
If you're running VS6, what you need to know is the following:
- Create preprocessor file - add /P to the CL call
- Create preprocessor file (with line numbers) - add /EP and /P to the CL call
Therefore, either look through for the pages for this option or manually add it.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
got it. Thank you, Tom.
In VS6, it's add /P or /EP (output is the output window of VS6) in Project Options of Project->Settings->C/C++ ->Category: Preprocessor.
|
|
|
|
|
No problem, Lucy. This is tremendously valuable in learning how those magic MFC and ATL macros work.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
the Property Pages, do you mean Project->Settings from the main menu?
Also, I am using VStudio 6 Enterprise Edition, if that helps.
.dave.
David Hisel -- http://www.hisel.com/
|
|
|
|
|
Sorry. I use VS.NET and forget that most don't. Look at my response to Lucy where I explain (as well as I can withouut the VS6 environment installed) how to do this in VS6.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
Hello,
In my MFC application I have two similar dialog boxes. Each have a List Control Box and each has a varaible (of type CListCtrl) associated to them. One of them works fine but I get a Debug Assertion error on the first of these four lines in the second dialog.
m_MyListControl2.InsertItem(0, Line1, 0)
m_MyListControl2.SetItemText(0, 1, Line2);
m_MyListControl2.SetItemText(0, 2, Line3);
m_MyListControl2.SetItemText(0, 3, Line5);
The dialog boxes all have the same header files and the contents of DoDataExchange() are similar too.
Does anyone know why this is happening?
Thanks,
Aoife
|
|
|
|
|
if you didn't make those calls in OnInitDialog then it's because they haven't been created yet.
|
|
|
|
|
But the first dialog box isn't mentioned in OnInitDialog and it works fine. Could it be because there is two of them?
Thanks,
|
|
|
|
|
What does the debug assertion say. Not only does it usually print text about why it asserted, but if you look at the source code where the assert was raise, it sometimes gives you information about what you need to do to correct the problem.
Tim Smith
I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?
|
|
|
|
|
It says that the "Debug Assertion Failed" in file winctrl.cpp at line 547.
void CListCtrl::DrawItem(LPDRAWITEMSTRUCT)
{
ASSERT(FALSE);
}
This is a MFC\src file.
It gives no other reason as to why its happening.
Thanks
|
|
|
|
|
Then it looks like your list control is marked as owner drawn but you aren't handling the DrawItem routine to draw it.
Tim Smith
I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?
|
|
|
|
|
I'm a newbie, so could you please explain how I can fix this?
Thanks,
Aoife
|
|
|
|
|
in the resource editor, open your dialog, double click the listbox then find and un-check the box that says "Owner Drawn" .
-c
I don't care, and you can't make me.
|
|
|
|
|
Worked perfectly!
I feel a bit thick that I didn't know that, but I'm so happy that I have finally got my application working that I don't care!
Thanks a million Chris.
Aoife
|
|
|
|
|
If I pass a quoted string variable to the LPVOID argument of a method it accepts it but if I pass a CString to the LPVOID augument I get a compiler error, cannot convert from 'CString' to 'LPVOID'. Can anyone help me with getting the data from a CString into an LPVOID data type?
Kyle
|
|
|
|
|
Convert first to LPCTSTR then maybe LPSTR then to LPVOID.
|
|
|
|
|
Tom Archer shared this answer with me so I wanted to share it with others. Thanks Tom!
It's easy. Just call the CString::GetBuffer function. Here's an example where I have a function that takes an LPVOID and another function that calls it twice (once passing a hard coded literal and then with a CString). Note that I'm using VC7. You might need to call GetBuffer(0) in VC6.
void CallTest()
{
Test("abc");
CString str = "def";
Test(str.GetBuffer()); // This is what you need to do in your case.
}
void Test(LPVOID lp)
{
AfxMessageBox((const char*)lp);
}
That should set you up.
Cheers,
Tom
It did! Thanks again Tom.
|
|
|
|
|
You're welcome, mate. Like I say in the Acknowledgements section of my C# book, being able to share code and help each other on sites like this is one very big reason that programming remains fun after all these years.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
Hey Tom
He said you helped him, but I cant see where
It puzzles me no end!
Nish
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
On another thread he had asked about how to use the registry and I sent him a simple class (CRegistry) I had written for my MFC book (Visual C++.NET Bible). He then asked how to call one of the member functions (WriteString) that takes an LPVOID since the value he wants to pass is in a CString. He must have posted the question here at the same time he emailed me. When I responded, he then updated this thread.
Can you tell that I've been writing books for too long? I can't say good morning to someone in less than 50 words any more! Damn editors and their request for more detail!!
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
Tom Archer wrote:
Visual C++.NET Bible
So, Tom , in this book, you are writing specifically about MFC 7 ???
Cheers,
Joao Vaz
Frustrated TCL programmer,good c++ programmer wannabe
|
|
|
|
|
Yes, the VC++.NET book is 95% MFC. I have about 5 chapters at the end on ME, but that's not the focus of the book. Those chapters are more like "if you're interested in this here's some stuff to get you started".
Personally, I don't think many people are going to to use ME so I wanted to keep the book focus on MFC. I really hate that publishers are not making this clear in their book titles. I wish the ME books would state in the title (Managed Extensions). As it is now, the readers have no idea just by looking at the title.
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
To be totally honest with you ,IMHO I think that you should need badly the money(the pool isn't in a great shape), personally I don't like the publisher of your forthcoming book , and I hate their Bible Series .
Apart from that what will be intended level of audience of the book? Beginner/Intermediate?
Now concerning your Inside C#, 2nd, I don't have any doubt that it rocks, although, for money constraints, I will only buy your book on the next 3 months (very optimistic way, by the end of this month) , my company insists in delaying my bonus payment (2 salaries) that I and my fellow colleagues have right
Cheers,
Joao Vaz
Frustrated TCL programmer,good c++ programmer wannabe
|
|
|
|
|
Joao Vaz wrote:
To be totally honest with you ,IMHO I think that you should need badly the money(the pool isn't in a great shape), personally I don't like the publisher of your forthcoming book , and I hate their Bible Series
That's cool. However, I think if you look at my MFC book, you'll definitely like it. It's really a labour of love at this point. You see, this was the first book I was ever a part of. The book was never strong overall and so I always wanted to redo it by myself. I've almost completely rewritten it and it is much stronger now. There are a couple of chapters still are still held over from the other author, but 95% of this 1300 page book is solid.
Joao Vaz wrote:
Apart from that what will be intended level of audience of the book? Beginner/Intermediate?
The book can be used by beginners as I do have some beginner level chapters to start the text. However, you can easily skip over those to get to the meaty stuff. For example, there's some really cool stuff on controls, dialogs, COM/ATL (9 chapters), database access, DLLs, COM+, etc. I hope I don't sound immodest here, but my book answers about 50% of the questions I've seen on this board and I would definitely compare it to any other MFC book (including Prosise's) in terms of completeness. (By the way, note that I know Jeff personally and mean that with a great deal of respect for his work.)
Joao Vaz wrote:
I will only buy your book on the next 3 months
No problem. I'll need sales then too
Cheers,
Tom Archer
Author, Inside C#
A total abstainer is one who abstains from everything but abstention, and especially from inactivity in the affairs of others.
|
|
|
|
|
Tom Archer wrote:
It's really a labour of love at this point
It isn't very difficult for you, you are a complet programmer freak
Tom Archer wrote:
but 95% of this 1300 page book is solid.
, a trully effort without a doubt and synonym of endless coding and writing nights ...
Tom Archer wrote:
but my book answers about 50% of the questions I've seen on this board
It's better that it succeds , with 1300 pags ! Serioulsly ,if it answers 50% then is a certainly a good book .
Tom Archer wrote:
I would definitely compare it to any other MFC book (including Prosise's) in terms of completeness
Now that's enough !!!! (conspiracy theory) You certainly want your name immortalized as great programming author , first with Inside C# , then with VC++ .Net Bible, then , who knows MC++ ? Shame on you , you bad boy ! You are respected more than enough by your peers, MFC and C# programmers , and you want more !!!!! I caught you, you want to say I'm the king of the
world !!! I'll defend the CPians with all my ... scratching ... but I'm corruptible ... if you offer me your 2nd of Inside C# with a signed autograph, then I'll forget and let you do what your evil mind planned .
Tom Archer wrote:
No problem. I'll need sales then too
Every penny is welcome
Cheers,
Joao Vaz
Frustrated TCL programmer,good c++ programmer wannabe
|
|
|
|
|