|
No that was removed as a security vulnerability with Service Pack 1.2.
¡El diablo está en mis pantalones! ¡Mire, mire!
Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)!
SELECT * FROM User WHERE Clue > 0
0 rows returned
Save an Orange - Use the VCF!
VCF Blog
|
|
|
|
|
No it still works as long as you use the safe string library on it.
led mike
|
|
|
|
|
led mike wrote: Abbra Kadabbra doesn't work?
Khulja sim sim will work i believe
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/codeProject$$>
|
|
|
|
|
Because it doesn't initialize for C libraries.
Will using <code>AfxBeginThread()</code> solve the problem? If so , I'll use it.
Before the list destroys, it will wait until the filling thread finishes.
|
|
|
|
|
followait wrote: Will using AfxBeginThread() solve the problem?
No, but if you don't use it you may have other problems. It's just the correct thing to do - there
are MFC initializations for the thread that may or may not affect your code.
followait wrote: Before the list destroys, it will wait until the filling thread finishes
So the thread just finishes by itself, right? You don't need to notify it?
If so, that's fine.
You may indeed have a problem blocking the control's UI thread while updating the control from another thread.
That's a good example of why manipulating controls/windows from multiple threads is generally a bad idea.
A couple ways you can fix it:
1) make the thread post notifications to the control's UI thread and let the UI thread manipulate the control.
2) pump messages while waiting for the thread to terminate (this is a bad idea, since the woker thread shouldn't
be updating the control after the control is destroyed).
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
followait wrote: Because it doesn't initialize for C libraries.
What ? Why C, you aredoing plain C++ (if you have classes, it means you are writing C++ code).
followait wrote: Before the list destroys, it will wait until the filling thread finishes.
If the thread doesn't know it has to finish, it will never finish. So, you need a way to tell the thread to finish (in general it is done by using a flag that you set to true).
|
|
|
|
|
|
just a question why you want list to destroy after filling it??
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/codeProject$$>
|
|
|
|
|
I put pictures into the list. The pictures are used as resouces by the application.
When a user close the application when the list is loading, it needs synchronizing.
|
|
|
|
|
My idea is so...
The user put the cursor on a phone number from any program in the computer.
He presses a Hot Key - and my program will dial the number.
How do I recognize the text the cursor is on...
If somebody can please bring a sample
Thanks a lot
|
|
|
|
|
I think the tech used by dictionary softwares that pick words from screen may help.
|
|
|
|
|
See if IAccessible::get_accValue() is of any help.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
|
I did like this
<br />
if (SUCCEEDED(AccessibleObjectFromPoint(pt, &pacc, &vtChild)))<br />
{<br />
BSTR bsName = NULL;<br />
BSTR bsValue = NULL;<br />
pacc->get_accName(vtChild, &bsName);<br />
pacc->get_accValue(vtChild, &bsValue);<br />
}<br />
The question is - How do I get the place of the marker in a text box
Thanks a lot
|
|
|
|
|
Hi,
I think u need to use Text Capture GDI hook to get selected text from any application. The Word Web dictionary is using technique.
thanks
Nitheesh
|
|
|
|
|
I've solved this problem months ago and I build an application doing exactly what you need!
Now for starters, how did I solved users choice for dialing the number from screen. I've notated that user must select something (he can select the whole screen for what I'm concern) then I send commands to simulate CTRL+C action, this forces to copy all selected to an a clipboard. It is easy to get selected data from clipboard, then parse for telephone numbers.
At the time I was furious and was google-ing all kind of forums for accessibility and other stuff. Getting sick only remembering!
Now I'm hoping this helps you a bit, feel free to replay me!
P.S.
For me the key thing was introducing the 'select what you want to dial', I could not seem to find another way for achieving my gold at the time!
|
|
|
|
|
It's a good idea...
I want a perfect way... not a easy
|
|
|
|
|
Anyway glad if I could help. It would be great to see final result when you do it. If you have time please send me an e-mail with brief description of yours solution!
Hope to hear from you.
Bye
|
|
|
|
|
Hello everyone,
I searched all of my VC folder files, but can not find where and how _ATL_SIMPLEMAPENTRY is defined. Any ideas?
thanks in advance,
George
|
|
|
|
|
atlbase.h
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
|
|
|
|
|
Thanks CPallini,
Windows native search tool does not work this time.
For this statement,
#define _ATL_SIMPLEMAPENTRY ((ATL::_ATL_CREATORARGFUNC*)1)
I think it means a function pointer of type CREATORARGFUNC is located address 0x00000001?
I think ((ATL::_ATL_CREATORARGFUNC)1) should be enough, since _ATL_CREATORARGFUNC itself is defined to function pointer type. Why add an additional * here?
regards,
George
|
|
|
|
|
George_George wrote: I think ((ATL::_ATL_CREATORARGFUNC)1) should be enough, since _ATL_CREATORARGFUNC itself is defined to function pointer type. Why add an additional * here
pointer to pointer
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/codeProject$$>
|
|
|
|
|
Thanks ThatsAlok,
From the ATL definition, _ATL_CREATORARGFUNC is a function type, other than function poniter type, right?
typedef HRESULT (WINAPI _ATL_CREATORARGFUNC)(void* pv, REFIID riid,
LPVOID* ppv, DWORD_PTR dw);
I can not think why it defines a function type, other than function pointer type. To use the function type variable, we always need to use the function pointer form of it, right? So, why not just define a function pointer type? Could we use function type directly?
regards,
George
|
|
|
|
|
The above is typedef , i.e. an alias for a type representing a function having the given prototype. Nothing to do with pointers.
To make things a bit clearer:
typedef int (MYFUN) (int x);
int square(int x) {return x*x;}
void main()
{
MYFUN p = square;
MYFUN *p = square;
}
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
|
|
|
|
|
Thanks CPallini,
I have tried your sample, and it is correct. I found when we define a function type, we always use its pointer form/type (e.g. in your sample, using type MYFUNC*, other than type MYFUNC*).
So, why not use function pointer type other than function type directly?
regards,
George
|
|
|
|