On Tue, May 5, 2015 at 6:28 PM, Usman Bhatti <usman.bha...@gmail.com> wrote:

> I succeeded to do it by encapsulating the C routine as a DLL and doing an
> FFI call from my image (as suggested by Guille).
>

At least there was a way!

Looks like this is the most controlled|debuggable way:
  - get it working with C code out of Pharo
  - make a bridge that can be used easily with FFI in a dll
  - use that from Pharo with proven FFI

Would NativeBoost work with your dll? Should.


I also tried to perform the nativeboost call by creating my structures in
> Pharo. The function in Windows that can be used to retrieve mac address in
> Windows: GetAdaptersInfo
> <https://msdn.microsoft.com/en-us/library/windows/desktop/aa365917%28v=vs.85%29.aspx>
>  that
> accepts a PIP_ADAPTER_INFO
> <https://msdn.microsoft.com/en-us/library/windows/desktop/aa366062(v=vs.85).aspx>
>  structure.
> I subclassed NBExternalStructure to define this struct and the other used
> by it in the image but my NB call returned with 87 code (Invalid parameter)
> and it was impossible to debug. However, I would like to make this thing
> work to understand what went wrong.
>

Has this something to do with 32|64 bit library complications?

Phil

>
> With ProcessWrapper, I could not load the classes essential for making the
> plugin work.
>
> HTH,
>
> Usman
>
>
>
>
> On Mon, May 4, 2015 at 2:54 PM, Ben Coman <b...@openinworld.com> wrote:
>
>> As a complete newb to VM building I found this fairly straight forward
>> (on a Mac btw).
>> https://github.com/pharo-project/pharo-vm
>> cheers -ben
>>
>> On Mon, May 4, 2015 at 5:28 PM, Usman Bhatti <usman.bha...@gmail.com>
>> wrote:
>>
>>>
>>>
>>> On Sun, May 3, 2015 at 4:22 PM, Pierce Ng <pie...@samadhiweb.com> wrote:
>>>
>>>> On Sat, May 02, 2015 at 03:55:47PM +0200, Usman Bhatti wrote:
>>>> > 1/ OSProcess: I tried  (PipeableOSProcess command: 'ipconfig /all')
>>>> output.
>>>>
>>>> I have used http://www.smalltalkhub.com/#!/~hernan/ProcessWrapper
>>>> successfully
>>>> back when I was on Windows using some now-ancient version of Pharo.
>>>>
>>>
>>> I had initially discarded the idea of using this project because it
>>> required a plugin and the information of the plugin was outdated on
>>> squeaksource. However, having evaluated superficially the complexity of
>>> doing it with nativeboost (because too many external c struct involved in
>>> the call), I would like to see if I am better off using this wrapper.
>>>
>>> I loaded it with:
>>>
>>> Gofer it
>>>   url: 'http://www.smalltalkhub.com/mc/hernan/ProcessWrapper/main';
>>>   package: 'ProcessWrapper-Core';
>>>   package: 'ProcessWrapper-Plugin';
>>>   package: 'ProcessWrapper-Tests';
>>>   load.
>>>
>>> But the plugins wont load because it requires the
>>> class SmartSyntaxInterpreterPlugin and apparently this file is a part of
>>> the VMMaker. Is there any recent config for VMMaker in Pharo because this
>>> one looks outdated:
>>>
>>> http://pharo.gemtalksystems.com/book/Virtual-Machine/Building/VMMakerTool/
>>>
>>>
>>>
>>>
>>>
>>>>
>>>> Pierce
>>>>
>>>>
>>>
>>
>

Reply via email to