|
el_scrub wrote:
Problem I have is the taskbar disappears too.
Your code is making the taskbar disappear. Wow! Not that it's impossible, but to do it accidently is really strange.
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
Duh apologies,
I mean the Taskbar Icon associated with the application.
|
|
|
|
|
Whenever ShowWindow(SW_HIDE) is called, it is supposed to hide all remnants of the window. It wouldn't make much sense to leave the icons in the Taskbar.
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
But with other Modals open and Visible I thought It the icon should stay,, but no because its linked to the main window set by my App class.
... naruhodo
|
|
|
|
|
Ok, i have been seeing stuff like this for a while in different apps.
Now what do they mean by this?
With the first part i would be thinking it bind itself to explorer.exe, the second part suggests otherwise
here is an exact quote from one of them.
"No Process Visible in any Task manager,Process explorer(2k,xp,9x),Injects into Explorer.exe on startup and exiting the parent. "
Can anyone explain to me what they mean by this?
|
|
|
|
|
It means the whole code of the application consist on launching a remote thread (via CreateRemoteThread or equivalent) into the explorer.exe process and exiting
Papa
while (TRUE)
Papa.WillLove ( Bebe ) ;
|
|
|
|
|
that tells me about as much as this does
"Injects into Explorer.exe on startup and exiting the parent."
|
|
|
|
|
I'm trying to implement sink interface which get some events by means on Connection Point..
I realized that there are so many ways to do it.
How do you guys think which is the best and easiest way to do it.?
By ATL's IDispEventImpl?
By just ATL's IDispatchImpl?
or by MFC?
could you recomment one?
|
|
|
|
|
Our customer picked this up in their UAT testing.
When a dialog is displayed the underlines are not shown on the button text for the hot keys until the ALT key is pressed. From this point on they are always shown. This seems to be a Windows feature as I see the same behaviour in the Explorer and Word and other apps.
I reuse the dialog objects by just hiding the window when the user closes it and showing it again when they reopen it because it is slow to load.
The problem is that the first time they open it the underlined characters are not underlined. If they press ALT the underlines appear. If they then close the window and reopen it the underlines are still there.
My question is how do I pragmatically display and hide the underlines?
|
|
|
|
|
umm easiest way I know of is this:
keybd_event(VK_ALT,NULL,NULL,NULL);
keybd_event(VK_ALT,NULL,KEYEVENTF_KEYUP,NULL);
check it out in MSDN
wWw.KruncherInc.cOm
|
|
|
|
|
thanks but where is VK_ALT defined? its not in WinUser.h
|
|
|
|
|
Oh I'm sorry I forgot it's actually VK_MENU. Does not make much since does it?
wWw.KruncherInc.cOm
|
|
|
|
|
I guessed that was it. I have found that the following will make the underlines appear
keybd_event(VK_MENU, NULL, NULL, NULL);
but this does not remove them
keybd_event(VK_MENU, NULL, KEYEVENTF_KEYUP, NULL);
Interestingly I have found that for dialogs without menus pressing the alt key will make the underlines appear on the buttons and other controls but pressing it again does not remove the underlines and pressing esc does not remove them either.
|
|
|
|
|
Josh Gray wrote:
keybd_event(VK_MENU, NULL, KEYEVENTF_KEYUP, NULL);
^That is to simulate the key being released.
This feature of xp can be found in the System Display dialogbox, Start>Control Panel>Display>Appearance>Effects>Hide underlined letters for keyboard navigation until I press the Alt key
wWw.KruncherInc.cOm
|
|
|
|
|
|
Josh Gray wrote:
My question is how do I pragmatically display and hide the underlines?
You can't. Why would you want to? It's a Windows feature - it's got nothing to do with your program. The safest thing to do is not to try to change the way Windows operates - it's what most users will expect and be comfortable with.
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
i agree with you. However the problem I am trying to fix is as follows
1) User opens dialog. CDialog derived object is created. InitDialog() runs and this takes a while because its loading data
2) Then the dialog is displayed
3) Then the user presses alt and the underlines appear
4) Then the user presses close and I call ShowWindow(SW_HIDE)
5) User reopens dialog. I call ShowWindow(SW_SHOW) on the object created in step one
6) Dialog opens and underlines are still displayed
This is a problem from the user point of view because they expect the dialog to look the same every time they open it. I can delete the dialog object and create a new one every time but this is very slow
|
|
|
|
|
Josh Gray wrote:
5) User reopens dialog. I call ShowWindow(SW_SHOW) on the object created in step one
6) Dialog opens and underlines are still displayed
Aha! The underlines are still displayed because you never closed the dialog box.
Josh Gray wrote:
InitDialog() runs and this takes a while because its loading data
How volatile is the data? Can you load it the first time you open the dialog box and then cache it so you don't have to load it the next time?
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
I can do that but at the moment all the dialogs are handled in this way by common code. Our customer is very close to going to production with this system and Im reluctant to make that kind of change at the moment. I was hoping to just make a one line change that would be easy for them to test.
|
|
|
|
|
Josh Gray wrote:
I was hoping to just make a one line change
Nope, sorry
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Josh Gray wrote:
...the underlines are not shown on the button text for the hot keys until the ALT key is pressed...This seems to be a Windows feature as I see the same behaviour in the Explorer and Word and other apps.
Yes, this is a well-documented Windows feature. On the Display Properties dialog, select the Effects tab. It's the checkbox labeled "Hide keyboard navigation indicators until I use the Alt key."
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
I'm trying to open the system store from IIS web extension and I
get an ACESS_DENIED error. It works when I run extension in "High-Isolation" mode under account belonging to Administrators group (which is not safe at all!!!), but id doesn't work if I run it under local IWAM_<machinename> account or specially-created "non-administrator" domain account. Where (and how) adjustments should be done to make it work?
Here is the call I make (C++)
store = CertOpenStore( CERT_STORE_PROV_SYSTEM,
PKCS_7_ASN_ENCODING | X509_ASN_ENCODING,
NULL,
CERT_SYSTEM_STORE_LOCAL_MACHINE,
L"MY"
);
Thanks,
Andrey
|
|
|
|
|
Would you be so kind as to suggest me how it is possible to make IE Toolbar in WTL sample here multiline. I tried SetRows() but it does not help me(of course I used TBSTYLE_WRAPABLE). I have read similar article here about problems with SetRows() in a simple floating Toolbar, it was solved be resizing parent control (or so?). I also had no luck in this approach. I always getting one line (but seems to me SetRows return correct coordinates as it should be to display the whole toolbar).
By the way, I used cmnctrl1 sample from MSDN and here SetRows works to set 2 lines(but not 3) even without TBSTYLE_WRAPABLE.
Best Regards,
Igor
|
|
|
|
|
i am overriding wndproc an handling the wm_command and wm_notify message appropriately.
in the case statement of wm_notify this is what i have
case WM_NOTIFY:
nmhdr = (NMHDR*) lParam;
notificationId = nmhdr->code;
if(notificationId == NM_CLICK)
{
AfxMessageBox(_T("CLICKED"));
return FALSE;
}
else if(notificationId == NM_DBLCLK)
{
AfxMessageBox(_T("double CLICKED"));
return FALSE;
}
...
....
//more if else goes here
else
{
// call default
}
the flow does enter this switch statement but never invokes the appropriate handler. When i tried to get the value of the notificationId it shows some junk value though nmhdr is properly initialzed and the controlid that generated the message is correct. what am i missing?
thanks
|
|
|
|
|
I am unsure how to start solving this problem.
I though i would begin by using the Knuth-Morris-Pratt string matching
algorithm does any one have a sugestion as to where i should begin.
Input would be the Filename: wordfind.in
The input file consists of a square table and a list of words. A blank line follows the table and then the words to find, one per line.
This is a sample of what my file contains.
cenad
aatps
rnrpj
hello
wmneo
hello
apple
car
me
men
ran
woman
Output
Filename: wordfind.out
This is what I wish my program to do after the program is run:
hello (3, 0) E
apple (0, 3) S
car (0, 0) S
car (0, 0) SE
me (4, 1) N
men (4, 1) N
ran (2, 0) NE
woman NOT FOUND
|
|
|
|