igmeou Posted April 3, 2005 Share Posted April 3, 2005 I need someone to guide me through my doubts regarding how to use COM commands. Regarding this statement: $objWord = ObjCreate("Word.Application"); Create an Word Object Help file explain as follow: ObjCreate ("classname", "servername" ) Classname - The class of the object in the following format: "appname.objectype" I pretty confused with the explaination(due to no COM experience :"> ) The question is: - What does classname actually meant? (Is there any connection with the ClassnameNN on the AutoIT spy?) - For the "appname.objectype", how can I know the appname/objectype? For example, if I want to run the hyperterminal(Win98) or simply other applications? (I think I need more variety of examples other then MS office.) - Is there any link that, I can learn more about COM easiler and faster? Thanks. [font="Arial"]Thanks[/font]If @error = me Then $sorry Else Do $clarifyMe Until $meClear EndIF MsgBox(0,"Special Message!","Special Thanks to " & $allHadReplied,$Forever) Link to comment Share on other sites More sharing options...
DaleHohm Posted April 3, 2005 Share Posted April 3, 2005 (edited) - Is there any link that, I can learn more about COM easiler and faster? <{POST_SNAPBACK}>When you use the COM Object interface you are not interfacing with Windows (meaning the general GUI) as you are with most AutoIt commands. Instead you are interacting with an application-specific programming interface (API). What is used for ClassName and everything you can do with it after it is instantiated (after you create a link to that application object) is all dependant on the specific applicaiton - many or most applications do not in fact expose an API for us to work with. This is why the Office apps are being used in the examples -- because they have an API and documentation for it is readily available at MSDN and in many shelves of books at your local bookstore.The Objects, Methods, Properties and Events associated with these Application APIs are all uniquely implemented in the code of the application, so you really need documentation on the API for each application to know what you can do and how to do it. VisualStudio (which calls it "intellisense") and some other IDEs (Integrated Development Environments) can show you the the Objects, Methods and Events associated with the application (assuming you've figured out the ClassName first :"> ), but without the API documentation you can only guess how to use them.So, going to MSDN and looking at the programming sections for the Office applications is one of the better ways of learning this interface. You can also pick up a book on Office VBA (Visual Basic for Applications) that will get you started (the VBA editor and interface is available inside each of your Office applications -- see Tools, Macro, Visual Basic Editor).Hope this helps,Dale Edited April 4, 2005 by DaleHohm Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model Automate input type=file (Related) Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded Better Better? IE.au3 issues with Vista - Workarounds SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead? Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble Link to comment Share on other sites More sharing options...
steveR Posted April 4, 2005 Share Posted April 4, 2005 (edited) If you don't have a IDE but you have Word, you can view objects through VBA object browser. Here's how:Run WordTools > Macro > Visual Basic editorTools > ReferencesYou will see a list of all registered components (ocx, dll)Check which ones you want to see such as AutoItX3 1.0 Type LibraryClick OKView > Object BrowserAt the top you will see a listbox with the components you checked with the first step. Such as AutoItX3LibOn the right, you will see all the properties and methods(functions) for the component.As for knowing how to use them, you will have to do some research since it's specific for each app.This should work for any VBA enabled app, not just Word. Not sure though.EDIT: Here is a free OLE/COM viwer, though it's a little advanced:oleViewer.zip Edited April 4, 2005 by steveR AutoIt3 online docs Use it... Know it... Live it...MSDN libraryglobal Help and SupportWindows: Just another pane in the glass. Link to comment Share on other sites More sharing options...
Trainee Posted April 4, 2005 Share Posted April 4, 2005 (edited) You might also look here Scripting Guide for Windows for some examples.Shell.Application object is a good place to start learning COM.It can be as easy as this:$obj = ObjCreate("Shell.Application"); Create a Shell Object if @error Or Not IsObj($obj) Then Exit;Object creation failed $obj.MinimizeAll;Minimize all windows Edited April 4, 2005 by Trainee Outcastprogramming Link to comment Share on other sites More sharing options...
Jmtyra Posted July 10, 2005 Share Posted July 10, 2005 Great links in here everyone, it has helped me a bunch to learn this COM structure. Thanks! 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