|
You don't need vxd to access the performance data under 9x. Check the KB article Q174631 HOWTO: Access the Performance Registry Under Windows 95.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Sir,
I have noticed that the resitry entries in win95/95 systems only provide the total CPUUsage and not CPUUSAGE PER PROCESS.In WinNT it is done through NtQuery Information function in Kernel.dll. I am not able to find any path to do it in Win95/98 systems.
I require dynamically for some interval of time(say for every 1 minute), the CPU used by every process currently running in the system.
Could you please help as it is very urgent.
Regards
Shankar
Wilfred
|
|
|
|
|
We have a lot of VC6 legacy code using MFC's CStringList. I've been charged with creating a COM interface for CStringList so that it can be used from within VB. Also the interface needs to support the for each ... VB syntax.
It seems to me that ATL's CComEnum/IEnumVARIANT is the answer, but I can't figure out the implementation. I accept that I should probably be using the STL, but that's not an option at the moment. I've seen a lot of examples of using CComEnum but they all seem to use STL containers or safearrays to hold the data. Does anyone have an example that uses CStringList or any other MFC list/array?
Gavin
|
|
|
|
|
Hi
I have some code that contains a linked list of pointers to a class that itself contains a list of items. These are declared as follows:
class CROI : public CObject
{
DECLARE_DYNCREATE(CROI)
.
.
.
CTypedPtrList<cptrlist, coutline*=""> m_lpOutlines;
CTypedPtrList<cptrlist, cvertexlist*=""> m_lpVertexLists;
.
.
.
};
class CVertexList
{
public:
CVertexList();
virtual ~CVertexList();
CList<cpoint, cpoint&=""> m_lVertices;
};
When I need to recreate this list I try and clear the existing list as
follows:
while(!m_lpVertexLists.IsEmpty()){
pVertexList = m_lpVertexLists.RemoveHead();
delete pVertexList;
}
Now this crashes sometime either because the pVertexList that it gets is not pointing to valid memory or because the list of objects at the next level down is corrupted at some point (ie a pNext is incorrect).
So some how something is corruptting the memory that is used for these lists and I can't figure it out.
Does anyone know how I can debug it to find out what is fiddling with the memory.
I am using VC++ 6.0 purchased back in 1998 and haven't downloaded any updates that I can remember. Is anyone aware whether they might have been problems with this particular area of VC++.
Any help would be much appreciated.
Puzzled
Andrew
|
|
|
|
|
I don't believe your problem will disappear when you install latest service pack (SP5).
It seems that you're corrupting the heap somewhere. I'd try to reduce the problem - create the sample MFC app with wizard, copy CROI and CVertexList, instantiate one CROI and fill it with multiple lists of vertices. If program will crash, you'll be sure that CROI the source of problems.
To automate this kind of debugging you may consider a special tool, like BoundsChecker or Rational Purify. I'm not sure if you can download demo version of BoundsChecker today; evaluation version of Purify can be downloaded from www.rational.com
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Hi,
I have editing of sub items enabled in a tree control. Is there any way that I can restrict the users input to numbers as you can with a normal CEdit control?
Thanks
Matthew
also, if anyone knows this it would be great. If I activate the IME during editing an item, the input isn't displayed very well at all as the bounding box for the text when editing begins isn't sufficient. Is there are fix for this?
cheers
Matthew
|
|
|
|
|
You'll probably have to subclass the tree edit control and catch the keystrokes.
Easier, slightly different way is to handle TVN_ENDLABELEDIT notification. In the handler, you can verify the text typed into edit control. If verification fails, you'd display msgbox with appropriate text, then call CTreeCtrl::EditLabel.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Top idea. Will do. Cheers. Matthew
|
|
|
|
|
I need to get a certain look and feel that involves placing controls on top of each other. IN particular, atm, I'm using a CStatic-derived class to change the background colour to the window colour (usually white), and then it has a client edge on it to make it look like a standard edit box.
On top of these I then need a combination of static controls, bitmaps, buttons, edit boxes and radio buttons.
(The look I'm going for is like the IE search window, but without using HTML).
My problem is that when controls are placed above another control they then don't receive focus, so I can't enter text or click on buttons.
So, what can I do to 'deactivate' the bottom control? I've tried setting it to the bottom of the Z-order and everything else above it, but no joy
Is the answer to just paint it on to the dialog using Draw3DRect and FillSolidRect? In which case should it be in the OnPaint handler and will the controls above it get drawn properly?
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Where are you going to place the 'layered' controls? In the dialog or CView-derived class?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
They're in a dialog-derived class, on a CFormView-derived class.
Basically, I want to reproduce the IE search window on a tab page in a tab control which is displayed on a CFormView-derived class, but I don't want to use an html window.
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
So what's the reason for static control? Can't you just handle WM_ERASEBKGND?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
You mean in the dialog, to draw the required effect underneath?
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Exactly. I'm assuming that you need static for some fancy background stuff - is that correct?
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Using a static control just gave me a quick and easy way to produce something that looked like a normal window (sunken 3D edges, window coloured background).
My poblem is that after trying several attempts with SetWindowPos, etc I could either have the controls painted properly above the static, giving the requried look, or I could have the functionality of the controls (button clicks and entering text in to edit boxes), but they are painted under the static
So what's a better way? Handle WM_ERASEBKGND in the dialog and just paint using draw3drect and fillsolidrect and dispense with the static control?
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Well, what's easier:
1) creating a static and handling WM_SIZE to cover the dialog with static
2) handling WM_ERASEBKGND and drawing dialog surface in the 'sunken' state?
I'd go for (2). For actual backgroud drawing, I'd call DrawEdge.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
OK, that works, thanks (i've gone for the WM_ERASEBKGND option).
Next question, how do I change the background colour for a radio button?
I've tried extending the CButton class and handling either WM_PAINT or WM_ERASBKGND or WM_CTLCOLOR or WM_CTLCOLOR_REFLECT, but none of the handler's got called
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Derek Lakin wrote:
I've tried extending the CButton class and handling either WM_PAINT or WM_ERASBKGND or WM_CTLCOLOR or WM_CTLCOLOR_REFLECT, but none of the handler's got called
Sounds strange. While there are some problems with WM_CTLCOLORBTN and push buttons, your WM_ERASEBKGND and WM_PAINT handlers should be called without problems.
You may have a look at May'97 issue of MSJ - in the C++ QA column there's a discussion about providing custom backgrounds for CFormView-derived classes.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Thanks Tom, I'll look into it
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Thanks Tom. THe problem was I hadn't added the relevant DDX_Control calls
The required handler was for WM_CTLCOLOR_REFLECT.
Derek Lakin.
I wish I was what I thought I was when I wished I was what I am.
Salamander Software Ltd.
|
|
|
|
|
Hello All,
How is it possible to add a ToolTip to a StaticText or an EditBox?
|
|
|
|
|
Hello All,
How is it possible to add a ToolTip to a StaticText or an EditBox?
SAS
|
|
|
|
|
Assuming that your controls are hosted in modal dialog, check KB article Q141758 HOWTO: How to Add Tooltips for Controls to an MFC Modal Dialog Box
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
|
The control needs a unique id and the SS_NOTIFY style set for it to have a tooltip.
Roger Allen
Sonork 100.10016
If I'm not breathing, I'm either dead or holding my breath.
A fool jabbers, while a wise man listens. But is he so wise to listen to the fool?
|
|
|
|