Page 5 of 5 FirstFirst ... 345
Results 41 to 47 of 47

Thread: thinBasic 1.10.x

  1. #41
    Super Moderator Petr Schreiber's Avatar
    Join Date
    Aug 2005
    Location
    Brno - Czech Republic
    Posts
    6,779
    Blog Entries
    3
    Rep Power
    691
    Hi Primo,

    the methods are documented here:
    https://msdn.microsoft.com/en-us/lib...(v=vs.84).aspx

    The work Eros has done in COM is equivalent of discovering America. It opens whole new world of possibilities, with friendly syntax.


    Petr
    Learn 3D graphics with ThinBASIC, learn TBGL!
    Windows 7 64bit - Intel Core 2 Duo T6600 @ 2.2GHz - 4 GB RAM - NVIDIA GeForce G210M 512MB
    Windows 8 64bit - Intel Core i5-3350P @ 3.1GHz - 8 GB RAM - NVIDIA GeForce GT640 3GB

  2. #42
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,136
    Blog Entries
    2
    Rep Power
    10
    Ciao primo,

    I will start from the bottom.
    If you press F1 in thinAir while cursor is over iDispatch term, you will get some help I've written.

    Anyway iDispatch is standard interface developed over COM.
    COM stands for "Component Object Model". In a few words you can think about it as a common interface to be able to talk with binary objects without having any info about that objects.
    It is the Microsoft way to interconnect software using a common interface. These interfaces are defined in a COM Object.

    If you want to use some function that are inside a DLL, you need to know exactly function name, function return type, number of function parameters, their type, their passing way (byref or byval), ... you need to know everything before being able to call that function. With a COM object you do not need anything, just the registered name of the object is enough because the object is able to describe itself using a common binary interface.

    There are many sources on the web you can find talking about ActiveX, COM, iUnknown, iDIspatch, iTypeLib, ... you can stay one year studying about it and still you will have something new to learn for other years
    As an introduction, have a look at http://pubs.opengroup.org/onlinepubs/009899899/
    A great book can be "Inside COM" from Don Box: https://www.amazon.com/Essential-COM...BBBNRXCVCB1EGW



    That said, back to your first question: how to know what a COM object interface instantiated inside an iDispacth variable exposes to the programmer?

    Answer is easy and complicated at the same time.

    1. In general any component developed by Microsoft like Scripting.Dictionary is documented by Microsoft.
      For example Scripting component is documented at https://msdn.microsoft.com/en-us/lib...(v=vs.84).aspx
      In that page you will find that Scripting implements some objects and one of those is Dictionary interface: https://msdn.microsoft.com/en-us/lib...(v=vs.84).aspx
      And there you will find what Properties and Methods that interface implements.
      Here https://msdn.microsoft.com/en-us/lib...(v=vs.84).aspx your question: Exists method
      So, first reply is: search on the web inside developer of the COM object you are using.
      .
    2. Another option is to use a COM Object Browser.
      A COM Browser is an application that can be used to browse all registered COM objects, and all objects that support Ole Automation interface.
      Have a look at this page https://www.autoitscript.com/autoit3...tro/ComRef.htm and check "OLE/COM Object Viewer" chapter
      .
    3. I'm finishing to adapt to thinBasic a COM Browser developed by Josť Roca and generously released as Freeware: see image
      With this browser you will be able to get information about installed COM components and what automation interfaces they implements and for each of them what properties and method they have. And for each of them what parameters they need ...



    Hope to have answered to some of your needs.
    I just started to study this development area and at every turn I discover a complete new world.

    Ciao
    Eros
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	TypeLibBrowser.PNG 
Views:	22 
Size:	117.6 KB 
ID:	9733  
    Last edited by ErosOlmi; 14-09-2017 at 08:40.
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  3. #43
    I'm finishing to adapt to thinBasic a COM Browser developed by Josť Roca and generously released as open source
    One small precission: I never have released anything as open source, but as freeware, allowing to use it for your own purposes, even in commercial applications, without paying a fee, but not to make derivative works from, sell or redistribute without permission.

    You have asked permission to adapt it for use with thinBasic and I have granted it to you, but this does not make the original or the derivative work(s) open source, but freeware.

    Freeware (not to be confused with "Free Software"):
    https://en.wikipedia.org/wiki/Freeware
    Last edited by Josť Roca; 14-09-2017 at 05:06.
    Forum: http://www.jose.it-berater.org/smfforum/index.php<br />Website: http://www.jose.it-berater.org/index.html<br />SED Editor, TypeLib Browser, headers and examples.

  4. #44
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,136
    Blog Entries
    2
    Rep Power
    10
    Ciao Josť,

    correct. Sorry for the confusion in writing.
    I've changed my post removing "open source" indication.

    Thanks
    Eros
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  5. #45
    thinBasic author ErosOlmi's Avatar
    Join Date
    Sep 2004
    Location
    Milan - Italy
    Age
    50
    Posts
    8,136
    Blog Entries
    2
    Rep Power
    10
    Just released thinBasic 1.10.3

    See first post of this threat and have fun
    http://www.thinbasic.com/community/s...inBasic-1-10-x
    www.thinbasic.com | www.thinbasic.com/community/ | psch.thinbasic.com
    Win10Pro 64bit - 8GB Ram - Intel i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

  6. #46
    Thanks Eros for the nicest thinbasic release full of golden innovations
    i have noticed there is a new Linked list LList in addition to the previous LL
    i will read and experiment with the new features, i am waiting my dental pain to stop
    best wishes

  7. #47
    Junior Member Kuron's Avatar
    Join Date
    Sep 2017
    Location
    Nashville
    Posts
    21
    Blog Entries
    1
    Rep Power
    3
    Thank you, Eros.

Page 5 of 5 FirstFirst ... 345

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •