|
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
|
|
|
|
|
|
I believe includeh10 was interested in Windows Explorer, not Internet Explorer.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Only Windows explorer in the moment.
I will test your code, thanks.
includeh10
|
|
|
|
|
IE looks like Explorer when it is showing a folder view
http://blog.joycode.com/jiangsheng
http://blog.csdn.net/jiangsheng
Command what is yours
Conquer what is not
---Kane
|
|
|
|
|
HWND hWnd=::FindWindow("ExploreWClass",0); is not working.
it may work on win95 only according to MSDN.
any more comments?
includeh10
|
|
|
|
|
includeh10 wrote:
HWND hWnd=::FindWindow("ExploreWClass",0); is not working.
Which means nothing unless you explain what "not working" means. Do you get a compiler/linker error? Does it fail to find a window with the indicated class name?
includeh10 wrote:
it may work on win95 only according to MSDN.
You need to re-read it again. The FindWindow() function is supported on Windows NT 3.1 and later, and Windows 95 and later.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
when we type a command on DOS window to execute a exe file, i.e.
regedit.exe
OS actually searches from a set of directories, if the file is not found, it shows error.
Do you know full list and searchong order of these directories?
thanks
includeh10
|
|
|
|