AutoHotkey Community

It is currently May 27th, 2012, 11:16 am

All times are UTC [ DST ]




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: Free COM DLL
PostPosted: March 11th, 2006, 10:09 am 
Interestingly there are some free WinBatch extenders and dlls that might be used with AutoHotkey's DLLCall function.

One of the more interesting one is com.dll

http://www.tfic.com/download/comext.zip

Others can be found here- http://www.tfic.com/htm/dd383000.htm#WBExt013

Might be useful for studying.


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: March 11th, 2006, 10:33 am 
Offline

Joined: December 27th, 2005, 1:46 pm
Posts: 6837
Location: France (near Paris)
I might be wrong as I didn't looked at the file, but such extenders/plugins are usually made to work only with the target program, offering a specialized API. So, unless somebody proves I am wrong, I fear this cannot be used within AHK.

_________________
Image vPhiLho := RegExReplace("Philippe Lhoste", "^(\w{3})\w*\s+\b(\w{3})\w*$", "$1$2")


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: March 11th, 2006, 6:04 pm 
Offline

Joined: March 2nd, 2004, 3:36 pm
Posts: 10720
I had a look at the file's "readme". It looks like it might be possible to call the DLL with DllCall. The interface is presented simply as:

COMCall(method, pobj [,arg1 ...])

However, the exact way to call it via DllCall would have to be discovered, either by trial and error or contacting the author, etc. Maybe someone with an interest could look into this.

Thanks.


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: March 12th, 2006, 5:42 am 
What is interesting is that perhaps this opens the possibility of a OLE/COM/ActiveX Dll for AutoHotkey. Like an AHKCOM.dll ...


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: March 12th, 2006, 2:51 pm 
Offline

Joined: December 27th, 2005, 1:46 pm
Posts: 6837
Location: France (near Paris)
Chris wrote:
I had a look at the file's "readme". It looks like it might be possible to call the DLL with DllCall. The interface is presented simply as:
COMCall(method, pobj [,arg1 ...])

That's the interface from the host program (WinBatch).
If you look at the export table (I just downloaded the file), you will see:
_WILExtender2
_WILExtender2@40
_WILExtenderQuery
_WILExtenderQuery@12
So obviously, as I feared, these are standardized function names for use of the application to extend. It probably call these functions to know which functions are defined in the DLL, etc.

Now, the .wbt files give examples of use, it may be of inspiration for a similar DLL.

_________________
Image vPhiLho := RegExReplace("Philippe Lhoste", "^(\w{3})\w*\s+\b(\w{3})\w*$", "$1$2")


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: March 12th, 2006, 3:42 pm 
Offline

Joined: March 2nd, 2004, 3:36 pm
Posts: 10720
Thanks for checking into it. If anyone still has an interest in this, perhaps the author could be contacted in case the source code is available. If not, I'm pretty sure there are similar examples on the 'net about how to work with COM, and it's still on my to-do list to research it.

Currently, there are quite a few features that seem of higher priority than COM because they're closer to the central mission of AHK and thus of higher benefit. Some of them are:
1) Using SendInput to provide uninterruptible keystrokes, mouse clicks, and hotstrings. This could be a big improvement in macro reliability.
2) More GUI controls like TreeView and Status Bar.
3) Other GUI features like custom cursors.


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: March 15th, 2006, 2:29 am 
Related article...

"A simple yet debuggable COM skeleton code"

http://www.codeproject.com/com/simplecomserver.asp


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: March 15th, 2006, 4:02 am 
Offline

Joined: July 3rd, 2004, 1:03 pm
Posts: 121
Interestingly, I was looking at the concept of an AHKCOM.dll and there are a number of examples of this method in other scripting/programming languages. Among those are Ruby and Python... both have source code that is interesting to look from the perspective of how they integrated com/ole/activex

http://www.python.org/windows/win32com/win32com_src.zip (Python win32com)

http://homepage1.nifty.com/markey/ruby/ ... -0.5.2.zip (Ruby win32ole)


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: March 15th, 2006, 1:19 pm 
Offline

Joined: March 2nd, 2004, 3:36 pm
Posts: 10720
Thanks for the links. I expect they'll make the R&D easier when the time comes.


Report this post
Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC [ DST ]


Who is online

Users browsing this forum: SKAN and 1 guest


You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Group