|
Well, *uck me.
Today VC7 decided to act up on me, in a big way. It won't let me edit my resources anymore; it gives me a "can't find afxres.h" message.
Here are the symptoms (long):
- afxres.h is where it should be
- does not happen on a fresh project
- worked before
- Happened for the first time when I was doing a search/replace on resource IDs, but I ignored it; it came back later. Can't remember if I was able to access the resource file in between those times, but I believe I did.
- Resource file compiles fine.
- If I replace resource.h and *.rc with another pair (from my new project that works), I get the same error.
- I've rebooted
- I've cleaned all my temp files.
- If I remove the reference to afxres.h, it complains about the next #include file (whic is also available and located in a dir that is referenced in te Resource Incudes list
- changing Resource Includes has no effect
I am clueless on this. Can anyone help?
TIA x 10^6
|
|
|
|
|
It turns out this is a known bug. My second Google search caught it:
Richard,
You wrote: "If I create a new C++ app or dll and try to open the .rc file
in recource view I get the RC1015 compiler error. The programs compile
just fine so the directory paths have to be OK, it only happens if you try
to edit the .rc file."
You potentially could be running into a problem with the Resource View that
happens when you have a lot of VC++ Include Directories. Try reducing the
number of include directories in Tools | Options | Projects | VC++
Directories | Include files.
Also, it may be possible to add the directories back after you successfully
expand the resources in resource view. The project has an APS file that it
uses for the resource view. Once that APS file is created, it doesn't go
through the same process when expanding the resources. So if the include
directories are all necessary, you could remove a few, expand the
resources, and then add them back. I know this is not ideal, and I
apologize for the inconvenience. I have reported this problem.
Thank You.
Jason Roth
Microsoft
This posting is provided "AS IS" with no warranties, and confers no rights.
--
|
|
|
|
|
Is there such a flag for sharing image list for a CTreeCtrl? If not, how would I force the Tree Ctrl to not destroy the Image List?
|
|
|
|
|
You need not worry; tree controls have this behavior by default. In fact, i am not aware that it is possible to disable it, so you must always destroy the image lists used by a tree control manually.
--------
Sip my mind.
|
|
|
|
|
Thanks, I was worried MS forgot to put that feature in
|
|
|
|
|
Hi,
Everybody
I am having a little problem using this Undocumented Function..
Everything is going fine.. but when i execute the
function SHChangeNotifyRegister...
It gives me Unhandled Exception - Access Violation
in Shell32.dll
Can nebody helpme.. - i am using Win 2000 Pro
if(SHGetSpecialFolderLocation(GetSafeHwnd(),CSIDL_DRIVES, &ppidl) != NOERROR) {
AfxMessageBox("GetSpecialFolder problem");
}
abc.pidlPath = ppidl;
abc.bWatchSubtree = TRUE;
if( (hNotify = SHChangeNotifyRegister( GetSafeHwnd(),
SHCNF_TYPE | SHCNF_IDLIST,
SHCNE_ALLEVENTS | SHCNE_INTERRUPT ,
WM_USER,
1,
abc)) == NULL) {
AfxMessageBox("Change Register Failed");
}
Regards
Sameer
sameermaggon@rediffmail.com
|
|
|
|
|
I want to use the c++ & sdk in the windows to attain as follows's result:If opened two window ways, can on the manifestation hold the act the auto is even to spread these window ways, each window way to at the right moment partition a the part hold the act, I can see the contents in a few window ways at the same time.Have a little similar partition in the window way, but this is at hold the act the inside the partition.
|
|
|
|
|
|
ROTFLMAO
Simply superb Shog, simply superb!!!!
Nish
One little CD gone,
Then two CDs gone,
Then 5 more gone,
For a total 7 gones,
If I was a CD R,
I'd wanna cry,
Cause I'd be just a goner,
For a nasty CD burner.
[funny how frustration wakes up the poet in me]
|
|
|
|
|
thank you!
--------
Sip my mind.
|
|
|
|
|
First I thought this might a direct translation of a greek poem. Then I saw Shog's post. Anyway its a work of art. I wish you good luck in your future attempts at verse? It's poetry isn't it?
Nish
One little CD gone,
Then two CDs gone,
Then 5 more gone,
For a total 7 gones,
If I was a CD R,
I'd wanna cry,
Cause I'd be just a goner,
For a nasty CD burner.
[funny how frustration wakes up the poet in me]
|
|
|
|
|
I am in need of a Multi subitem selection Tree control. Does anyone have any ideas for a good starting point or even an existing one.
Happy programming!!
|
|
|
|
|
please see:
http://www.codeguru.com/mfc/comments/26400.shtml
|
|
|
|
|
Programmers Paradise has the Visual Studio.net Professional upgrade for $195.99 after a $300 rebate. Any better offers out there?
Do not quite understand why Code Project is offering the full version of Visual Studio.net for $799, when most of us only need the upgrade, and we do not need the "extras" from Dundas and Wintellect. Perhaps Code Project can give us a great deal on the upgrade too?
|
|
|
|
|
Is there a unique MFC protection that keeps an object to another class from modifying its private data?
I have a CStringArray in the my document class (single-document). I pass the CStringArray object to class function belonging to another object that I instantiate inside of the document class.
For example:
#include myOutsideClass;
void CMyClassDoc::change()
{
myOutsideClass *pClass = new myOutsideClass;
pClass->modify(myCStringArrayObject);
}
-----
// Definition of modify()
void CMyOutsideClass(CStringArray &array)
{
array.RemoveAll(); // remove all data from object array
array.Add("testing"); // insert "testing" into object array
}
-----
Notice I pass the CStringArray object into modify using reference. Function modify(CStringArray &array) can read data from the object array. However, it cannot make permanent changes such as RemoveAll(), Add(), and/or SetAt().
Is there a internal protection algorithm that keeps another object from making permanent changes to a member object? I tried declaring the CStringArray inside of CDocument in public. That does not work either. The program crashes with an *access violation* error.
Thanks,
Kuphryn
|
|
|
|
|
Did you run the program in Debug mode?
please try run in Release mode!
or in Debug mode:
-----------------------------
if( array.GetSize() > 0 )
array.RemoveAll();
|
|
|
|
|
Okay.
I think I know what's going on. I am working with CString object and string object. The program does not copy data from the CString object into the string object correct.
For example:
CString cStr = "testing";
string temp;
temp = cStr; // this does not produce an error. However, it does not work
temp = cStr.getat(1) // same as above
What do I need to cast the cStr so the temp assigment = will work correctly?
Kuphryn
|
|
|
|
|
CString cStr = "testing";
string temp = "";
char p[80];
strcpy(p,"testing");
temp = p;
memset(p,0,sizeof(p));
// or temp = cStr;
AfxMessageBox( temp.c_str() );
char szBuffer[80];
strcpy(szBuffer, temp.c_str() );
AfxMessageBox( szBuffer );
-------------------------------
both show messageBox "testing"
|
|
|
|
|
|
Thanks!
I have one question.
In the line:
// CString myString;
CEditCtrl::GetLine(1, myString.GetBuffer(255), 255);
Is 255 the maximun number of characters in *that line*?
I would like to get everything on that line.
In general, is the size (255 in this case) referring to bytes or characters (characters * bytes = maxsize?).
Kuphryn
|
|
|
|
|
How can I have a full screen window (with or without a border) like those we have in expert mode in many applications like MS Word and Photoshop (also used in screen savers I think)?
Regards
(a.k.a. Wal2k) www.wal2k.com
|
|
|
|
|
Not used by screen savers at all, but the way to do it is simply to resize your window so the caption is above the visible window and the status bar is below it. I believe you can programatically hide/show the taskbar, but I'm not sure how.
Christian
The tragedy of cyberspace - that so much can travel so far, and yet mean so little.
"I'm somewhat suspicious of STL though. My (test,experimental) program worked first time. Whats that all about??!?!
- Jon Hulatt, 22/3/2002
|
|
|
|
|
Christian Graus wrote:
I believe you can programatically hide/show the taskbar, but I'm not sure how.
Just find it with ::FindWindow("The_class_name_of_taskbar", NULL) and then you cab show/hide it programaticly.
------------------------------------
Rickard Andersson, Suza Computing
ICQ#: 50302279
I'm from the winter country SWEDEN!
------------------------------------
|
|
|
|
|
Well, that much is obvious, but I thought there was a more *specific* way
Christian
The tragedy of cyberspace - that so much can travel so far, and yet mean so little.
"I'm somewhat suspicious of STL though. My (test,experimental) program worked first time. Whats that all about??!?!
- Jon Hulatt, 22/3/2002
|
|
|
|
|
HWND FullScreenWindow = ::CreateWindowEx(WS_EX_TOPMOST,
_T("MyRegisteredWindowClass"),
NULL,
WS_POPUP,
0,
0,
GetSystemMetrics(SM_CXSCREEN),
GetSystemMetrics(SM_CYSCREEN),
NULL,
NULL,
TheApplicationInstanceHandle,
NULL);
ShowWindow(FullScreenWindow, SW_SHOW);
or something like that
---
CPUA 0x5041
Sonork 100.11743 Chicken Little
It may be that your sole purpose in life is simply to serve as a warning to others.
|
|
|
|