On Wed, Nov 1, 2017 at 6:08 AM, teso...@gmail.com <teso...@gmail.com> wrote:

> Hi Ben,
>     first sorry for answering late, I have seen your mail before, but the
> tons of mails of Pharo got over it.
>
> I will tell you the state of what I have and what maybe you will need.
> But, before my plan is to improve this, but as with everything it is easier
> to push it if I have some users.
>
> - I have implemented a way of expressing FFI calls to COM objects, I have
> solved all the problems of the Vtable and the different types. So it is
> possible to create a wrapper for any of the COM objects. I have done so for
> the objects used in the "reflective" API of COM.
>
> - My idea is to use the reflective API to generate automatically the Pharo
> Wrappers to the objects. This is nice, but if you need to use some known
> objects you don't need all this transparency as using known instances can
> be easily implemented.
>

So is you aim to help discover with something like Excel's  "Tools >
References"   dialog...?
* https://i.stack.imgur.com/J0rEr.jpg

That would be super cool.



> - I have some examples using the IE COM object as it is a nice thing to
> use, and also it uses many different things in the API (properties,
> variant, optional parameters, etc). However, the support in the Variant
> type is not full yet. You can receive and send variant type values, but
> reading the different contents is not implemented (it has like 30 different
> payloads in the type, I have only the basics).
>
> I have to check what I have know, because I have been working a little
> more, but I have to put it in Github and organize it a little. Now it is
> working in Pharo 6 32Bits. My plan is to first migrate it to Pharo7 also (I
> think it should be straight forward) and then implement it for 64 bits
> (this part is possible that requires a big rewritting, as the API has some
> changes from 32 to 64 bits).
>

Sounds like a good plan.


>
> In the next days I will try to make a couple of examples to show how to
> map a known class. I remember that the reflective part now can query the
> interface and perform dynamic calls but the way of interacting with it
> should be improved.
>
> I really will love to have somebody using it, so I will try to help you if
> you (or other) has a use case. Usually having a use case is easy to move a
> project.
>

Next week when I'm back on site I'll paste here the exact VBA code I'd like
to replicate.

The business has OpenText running as its intranet document management
system.
*
https://www.opentext.com/file_source/OpenText/en_US/PDF/opentext-product-overview-co-opentext-content-server-en.pdf

It useful some fancy Javascript stuff as part of its authentication
process, so using XMLHttpRequest or WINHTTP from Excel don't seem to cut it
- they don't seem to execute the Javascript, which is the same I expect
from Pharo.  So I use IE to get to the data page, something like this...
*
https://stackoverflow.com/questions/11805389/getting-data-from-html-source-in-vba-excel
* https://stackoverflow.com/questions/23299134/failproof-wait-for-ie-to-load


and then with Excel I pass IE's "innerHTML" to MSXML to use XPath, but in
Pharo I'd use available XPath libraries instead.

cheers -ben


> Cheers,
> Pablo
>
> On Mon, Oct 30, 2017 at 6:11 PM, Ben Coman <b...@openinworld.com> wrote:
>
>> Hi Pablo,
>>
>> At work I managed to remote control Internet Explorer with Excel VBA like
>> this...
>> [1] http://www.automateexcel.com/vba/automate-internet-explorer
>>
>> and went looking for how similar might be achieved from Pharo.  IIUC I
>> discovered this would be done via Microsoft's Component Object Model, and
>> then I bumped into your repo...
>> [2] https://github.com/tesonep/pharo-com
>>
>> Could you advise the status and your plans for this?  Since I see its
>> only a few months old I've probably stumbled onto it prematurely, but I see
>> no documentation or tests to discover how to use it.  So I'll curious
>> whether it makes something like [1] possible? And could you show how that
>> would be done?
>>
>> cheers -ben
>>
>>
>> P.S. For context, at work I automated IE since the intranet document
>> management system (OpenText) does authentication via a javascript function
>> in the browser, which doesn't compute with Microsoft's MSXML.DOMDocument
>> component.  So I use IE to do the authentication and grab the raw XML from
>> IE to then stuff it into MSXML.DOMDocument from which I pull the data I
>> need.
>>
>> But I'd love to do it with Pharo instead (if I can get IT to white list
>> it)
>>
>> cheers -ben
>>
>
>
>
> --
> Pablo Tesone.
> teso...@gmail.com
>

Reply via email to