JRowe Posted October 18, 2009 Share Posted October 18, 2009 I'm wondering what it does. I think, from working with the low level mousehook, that whenever a function that's been registered as a callback is called in an external dll, that function is redirected to an AutoIt function. Let's say there's an Application that uses ExampleDLL with someFunction(). someFunction() takes two integers as params and adds them, in the c++ DLL. I set someFunc() as a callback using DllCallbackRegister, then redirect it to a function that multiplies the parameters instead. I start the application, then I start my script. When I use the application, is someFunc() going to return the value from the AutoIt callback function? [center]However, like ninjas, cyber warriors operate in silence.AutoIt Chat Engine (+Chatbot) , Link Grammar for AutoIt , Simple Speech RecognitionArtificial Neural Networks UDF , Bayesian Networks UDF , Pattern Matching UDFTransparent PNG GUI Elements , Au3Irrlicht 2Advanced Mouse Events MonitorGrammar Database GeneratorTransitions & Tweening UDFPoker Hand Evaluator[/center] Link to comment Share on other sites More sharing options...
monoceres Posted October 18, 2009 Share Posted October 18, 2009 The callback is based on work done by picasso. The implementation could have changed, but I'm pretty sure it hasn't. http://www.autoitscript.com/forum/index.php?showtopic=50768&st=0&p=384128&fromsearch=1&#entry384128 Broken link? PM me and I'll send you the file! Link to comment Share on other sites More sharing options...
JRowe Posted October 18, 2009 Author Share Posted October 18, 2009 So in the example scenario I posted, is someFunc() gonna return the autoit script's value inside the other application? Or is that what hooking is for? Sorry if I'm being dense, I read through the thread and didn't see anything pertaining to that question. The reason I ask is that I have an application that makes extensive use of a user created dll. If I could create functions in that dll that called AutoIt functions in turn, it would make me a very happy man. Thanks, monoceres. [center]However, like ninjas, cyber warriors operate in silence.AutoIt Chat Engine (+Chatbot) , Link Grammar for AutoIt , Simple Speech RecognitionArtificial Neural Networks UDF , Bayesian Networks UDF , Pattern Matching UDFTransparent PNG GUI Elements , Au3Irrlicht 2Advanced Mouse Events MonitorGrammar Database GeneratorTransitions & Tweening UDFPoker Hand Evaluator[/center] Link to comment Share on other sites More sharing options...
monoceres Posted October 18, 2009 Share Posted October 18, 2009 If I understood you correctly, you want to replace an exported function in a dll with a autoit callback? If so, then it's very possible, in fact, it's the exact thing I'm doing in the IAT api hooking script I've posted here (check my sig). trancexx also have done work with this in his resource hacker project. Broken link? PM me and I'll send you the file! Link to comment Share on other sites More sharing options...
JRowe Posted October 18, 2009 Author Share Posted October 18, 2009 Awesome! Could you pm me that c++ function? [center]However, like ninjas, cyber warriors operate in silence.AutoIt Chat Engine (+Chatbot) , Link Grammar for AutoIt , Simple Speech RecognitionArtificial Neural Networks UDF , Bayesian Networks UDF , Pattern Matching UDFTransparent PNG GUI Elements , Au3Irrlicht 2Advanced Mouse Events MonitorGrammar Database GeneratorTransitions & Tweening UDFPoker Hand Evaluator[/center] Link to comment Share on other sites More sharing options...
monoceres Posted October 18, 2009 Share Posted October 18, 2009 Awesome! Could you pm me that c++ function?Sure, just let me find it first, I've reinstalled my system several times since then so it's probably in a backup dir somewhere. Broken link? PM me and I'll send you the file! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now