|
There's more than one way to skin a cat. Are you supposed to use C streams (e.g., FILE*), STL streams (e.g., ifstream), MFC (e.g., CFile), or what?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
I want to disable the task manager for a user group or the entire machine. it don't work if I disable it with HKLM...
Cannot do it in the regedit under HKCU because it only disable the task manager for the current user not a user group.
Cant someone help me please
|
|
|
|
|
|
consider
char *buff[] = { "sec1",
"sec2",
"sec3",
"sec4",
"sec5"
};
I want to pass this to the client side from my COM server
Server side code
VARIANT msg ; <br />
char **buff ; <br />
buff = new char*[5];<br />
for(int i=0;i<5;i++){<br />
buff[i] = new char[32];<br />
memset(buff[i],0,32);<br />
char str[5];<br />
sprintf(str,"Sec%d",i);<br />
strcpy(buff[i],str);<br />
}<br />
SAFEARRAY sArray ;<br />
sArray.cDims=2 ; <br />
sArray.fFeatures=FADF_AUTO ;<br />
sArray.cbElements=1;<br />
sArray.cLocks=0;<br />
sArray.rgsabound[0].cElements=5;<br />
sArray.rgsabound[0].lLbound = 0;<br />
<br />
sArray.rgsabound[1].cElements=32;<br />
sArray.rgsabound[1].lLbound = 0;<br />
sArray.pvData=(void *)(buff);<br />
msg.parray=&sArray ;<br />
msg.vt=VT_ARRAY | VT_UI1;<br />
_bstr_t t("Dummy");<br />
dummy->Fire_ProjectEepromMsgEvent(t,msg);<br />
for(i=0;i<5;i++){<br />
delete [] buff[i];<br />
buff[i]=0;<br />
}<br />
delete [] buff ;
On the client side the handler has the following signature
static _ATL_FUNC_INFO MsgInfo = { CC_STDCALL, VT_EMPTY,2,{VT_BSTR,VT_VARIANT }<br />
<br />
HRESULT CClient::HandleMsgEvent(BSTR Name,VARIANT data )<br />
{<br />
SAFEARRAY *sa ;<br />
sa = data.parray;<br />
<br />
}
For some reason I am unable to get this value in the client .
Please help
Engineering is the effort !
|
|
|
|
|
the _CRTDbg macros can be used to view the contents of the heap.. in context of the current process... that is the heap used by our program... what if i want to view the contents of the heap of another executing process?
|
|
|
|
|
See if this article is of any help.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Hello everyone, plz help me with the following problems:
The environment is Windows.
I want to let my program stand behind an executing program in the hook chain, so my idea is like this:
-force that program, say A, to stop.
-start my program .
-start A again.
With that approach I need to solve the following sub problems:
1. How to stop an executing program ? I guess I have to create fake messages to send to the program, but I still don't know the specifics.
2. How to start the program again ? I guess I can keep the location of the exe file when I stopped it, then use that to launch it again.
Is there any better approach to do that ? or if you know the answers to the questions 1 or 2, plz let me know, I need help badly, thanks.
|
|
|
|
|
maitung wrote:
1. How to stop an executing program ?
Post a WM_CLOSE message to it.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Is there a way to copy a MFC Dialog from one project to another in Visual Studio7.1? I am trying to bring in two Dialogs from another project, cutting and pasting does not do it...
|
|
|
|
|
i use vc 6:
in target project, open rc file of source project, then copy the dialog - hope it works in vc 7.
includeh10
|
|
|
|
|
Unfortunately, that does not work
|
|
|
|
|
did you close source project?
you do not need to open source project - copying is done only by target project - from rc file to target
includeh10
|
|
|
|
|
Close both the source and destination projects, then in a VS instance with no open project, open both the projects' *.rc files. You can then cut and paste correctly.
|
|
|
|
|
Thanks Larry, it works....
|
|
|
|
|
Hi,
I have this strange bug in my Visual Studio 6.0:
While editting, I cannot see the information regarding MFC objects. i.e. parameter info and complete word options don't work for Visual/MFC object (CString for example) and also I the member function data (return value and args) are not being displayed.
All of this works fine when refering to classes and objects which I wrote.
So to conclude it the problem is with displaying information of built-in classes.
I tried to reinstall Visual Studio and MSDN, but the problem was not solved, and this thing didn't happened to me with the same application and the same installation of VS and MSDN on other computer ... can it be something to do with my computer or the programs which are installed on it?
please help me out here.
thanks,
yaron.
|
|
|
|
|
Try this: Close VC, delete your project's .ncb file, and reopen the workspace. Deleting the .ncb file often fixes many IntelliSense problems.
--Mike--
Visual C++ MVP
LINKS~! Ericahist | 1ClickPicGrabber | CP SearchBar v2.0.2 | C++ Forum FAQ
Strange things are afoot at the U+004B U+20DD
|
|
|
|
|
hi.
my english is very bad.
but you can colse the project .then delete all files with extension aps.clw.
ncb.opt and dsw.then cilked on file dsp .press ok.and from build menu cliked on the rebuild all.
then open class wizard prees ok and cliked on the AddAll Button.
you can see all class in the workspace.
|
|
|
|
|
hi.
my english is very bad.
but you can colse the project .then delete all files with extension aps.clw.
ncb.opt and dsw.then cilked on file dsp .press ok.and from build menu cliked on the rebuild all.
then open class wizard and cliked on the AddAll Button.
you can see all class in the workspace.
|
|
|
|
|
thank you all for the help.
It works !!!
|
|
|
|
|
i.e.
if user selects a directory and/or file (or multiple selections) in Windows explorer, i need to know these user selections when user clicks a button in my app - knowing selection by a click (WM_message), not monitor Exploere.
thanks
includeh10
|
|
|
|
|
I'm a bit confused. What does Windows Explorer have to do with your app's response to a button-click?
Are you simply wanting to know what selection has been made within Windows Explorer? I'm not for sure, but I think that IPropertyNotifySink might be needed for this.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
maybe my english is not good enough to ...
they are 2 things: just think about the app needs to know user selections by a button-click ---- button-click is not the same as monitoring all Explorer (use less CPU time?).
cheers
includeh10
|
|
|
|
|
i simply checked IPropertyNotifySink - the function received notifications of changes (or monitor changes from my app's view), it is not my need.
includeh10
|
|
|
|
|
If you want to query Windows Explorer yourself rather than have it notify you, you could use something like:
HWND hWnd = FindWindow("ExploreWClass", NULL);
if (NULL != hWnd)
hWnd = FindWindowEx(hWnd, NULL, "SHELLDLL_DefView", NULL);
if (NULL != hWnd)
hWnd = FindWindowEx(hWnd, NULL, "SysListView32", NULL);
if (NULL != hWnd)
{
CListView *p = (CListView *) CListView::FromHandle(hWnd);
if (NULL != p)
{
CListCtrl &c = p->GetListCtrl();
if ((GetWindowLong(c.GetSafeHwnd(), GWL_STYLE) & LVS_REPORT) == LVS_REPORT)
{
for (int x = 0, nItem = -1; x < c.GetSelectedCount(); x++)
{
nItem = c.GetNextItem(nItem, LVNI_SELECTED);
if (-1 != nItem)
TRACE("Item = %d\n", nItem);
}
}
}
}
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|