I guess at least it needs the memf. To avoid memory leak.

On 9 Jul, 2013, at 9:18 PM, David Mitchell <[email protected]> wrote:

> I changed
> 
> SafeArrayDestroy_oleutil_ propVals
> 
> to
> 
> SafeArrayDestroy_oleutil_ propVals
> olevarfree__p propVals
> 
> This did not crash in J801_32 and did crash in J801_64.
> 
> On 7/9/2013 9:03, bill lam wrote:
>> Will it work if olevarfree comes after that newly added line?
>> 
>> On 9 Jul, 2013, at 8:24 PM, David Mitchell <[email protected]> wrote:
>> 
>>> I replaced
>>> 
>>> olevarfree__p propVals
>>> 
>>> with
>>> 
>>> SafeArrayDestroy_oleutil_ propVals
>>> 
>>> This did not crash with J801_64 or J801_32.
>>> 
>>> On 7/9/2013 7:22, bill lam wrote:
>>>> Thanks. But there will be memory leak if that line is not
>>>> executed. I have no idea which is the culprit.
>>>> 
>>>> Вт, 09 июл 2013, David Mitchell писал(а):
>>>>> J801_32 ran successfully with the olevarfree__p line as delivered.
>>>>> J801_64 crashed if the olevarfree__p was in the code.
>>>>> 
>>>>> I moved the olevarfree__p line just before the destroy__p and J801_64
>>>>> still crashed when the olevarfree__p line was executed.
>>>>> 
>>>>> On 7/9/2013 7:06, bill lam wrote:
>>>>>> Did you mean that line worked in 32-bit but crashed in 64-bit?
>>>>>> or will it work if you move that line further down?
>>>>>> 
>>>>>> Вт, 09 июл 2013, David Mitchell писал(а):
>>>>>>> Stepping through the code, the crash occurs using j801 64 if the
>>>>>>> following line is executed.  If it is not executed, j801 64 does not
>>>>>>> crash and the code appears to work successfully.
>>>>>>> 
>>>>>>> olevarfree__p propVals
>>>>>>> 
>>>>>>> 
>>>>>>> On 7/8/2013 21:56, David Mitchell wrote:
>>>>>>>> Sad to say, the crash occurs with jconsole 64 and does not occur with 
>>>>>>>> jconsole
>>>>>>>> 64 running under cdb.
>>>>>>>> 
>>>>>>>> This also happens with jqt running with and without cdb.
>>>>>>>> 
>>>>>>>> I will have to be more imaginative with my debugging.
>>>>>>>> 
>>>>>>>> On 7/8/2013 21:11, bill lam wrote:
>>>>>>>>> For the purpose of testing wdooo and openoffice, it can be done
>>>>>>>>> inside jconsole.
>>>>>>>>> 
>>>>>>>>> Пн, 08 июл 2013, David Mitchell писал(а):
>>>>>>>>>> When I try the updated script from the latest J801 64 on Win7 64, I
>>>>>>>>>> get a 'jqt.exe has stopped working' message box.
>>>>>>>>>> 
>>>>>>>>>> I have not looked at the crash in more detail, so it was not clear to
>>>>>>>>>> me what the root of the problem was.
>>>>>>>>>> 
>>>>>>>>>> On 7/8/2013 11:26, bill lam wrote:
>>>>>>>>>>> Thanks, the typo in oocalc.ijs has been fixed and package
>>>>>>>>>>> updated.
>>>>>>>>>>> 
>>>>>>>>>>> 64-bit J can call 32-bit out-of-process oleautomation server. IIRC
>>>>>>>>>>> I had tested calling a 32-bit excel.exe from 64-bit J wdooo.
>>>>>>>>>>> 
>>>>>>>>>>> Not tested for that on Openoffice, if it fails I suspect that
>>>>>>>>>>> should be a problem of Openoffice itself.
>>>>>>>>>>> 
>>>>>>>>>>> Пн, 08 июл 2013, David Mitchell писал(а):
>>>>>>>>>>>> Mike,
>>>>>>>>>>>> 
>>>>>>>>>>>> I tried the demo script oocalc.ijs on both Win7 and Win8 with the 
>>>>>>>>>>>> latest J801.
>>>>>>>>>>>> 
>>>>>>>>>>>> I found out these things:
>>>>>>>>>>>> 
>>>>>>>>>>>> 0.  Open Office is only available as 32 bit executables.  The wdooo
>>>>>>>>>>>> code will only work with J801 32 bit, as far as I can see.
>>>>>>>>>>>> 
>>>>>>>>>>>> 1.  The verb test.ijs would not work for me on any version of J
>>>>>>>>>>>> without some changes:
>>>>>>>>>>>> 
>>>>>>>>>>>> ---
>>>>>>>>>>>> test=: 3 : 0
>>>>>>>>>>>> 
>>>>>>>>>>>> NB. (1!:1 <jpath '~addons/tables/wdooo/test1.ijs') 1!:2 <f=. jpath
>>>>>>>>>>>> '~temp/test1.xls'
>>>>>>>>>>>> (1!:1 <jpath '~addons/tables/wdooo/test1.xls') 1!:2 <f=. jpath
>>>>>>>>>>>> '~temp/test1.xls'
>>>>>>>>>>>> 
>>>>>>>>>>>> PATH=. '/'&(('\' I.@:= ])}) f
>>>>>>>>>>>> 
>>>>>>>>>>>> NB. f1=. 'file:///', PATH, '/test1.xls'
>>>>>>>>>>>> f1=. 'file:///', PATH
>>>>>>>>>>>> 
>>>>>>>>>>>> smoutput f1
>>>>>>>>>>>> ---
>>>>>>>>>>>> 
>>>>>>>>>>>> I also changed test.ijs to update the second sheet rather than the 
>>>>>>>>>>>> first
>>>>>>>>>>>> sheet:
>>>>>>>>>>>> 
>>>>>>>>>>>> NB.  olemethod__p temp ; 'getByIndex' ; 0
>>>>>>>>>>>>   olemethod__p temp ; 'getByIndex' ; 1
>>>>>>>>>>>> 
>>>>>>>>>>>> Once I made these changes, with the latest version of J801 32 bit 
>>>>>>>>>>>> and
>>>>>>>>>>>> the current Open Office installed, the workbook test.xls in
>>>>>>>>>>>> j801-user\temp showed this for Sheet 2 cells D:10, E:10, F:10:
>>>>>>>>>>>> 
>>>>>>>>>>>> OOo Calc    123    02/28/07
>>>>>>>>>>>> 
>>>>>>>>>>>> Which is not in the original workbook.
>>>>>>>>>>>> 
>>>>>>>>>>>> So the bottom line is that the code example in oocalc.ijs, as
>>>>>>>>>>>> modified above, will update and save the workbook with one sheet
>>>>>>>>>>>> modified.
>>>>>>>>>>>> 
>>>>>>>>>>>> Good luck,
>>>>>>>>>>>> David Mitchell
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> On 7/5/2013 5:16, Mike Day wrote:
>>>>>>>>>>>>> (copied to Bill & Ric)
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I suspect Bill Lam and/or Ric Sherlock are the people are the 
>>>>>>>>>>>>> people to ask
>>>>>>>>>>>>> here,   and but I'll ask the forum as a whole anyway:
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I've just acquired a new laptop and am enjoying learning 64-bit 
>>>>>>>>>>>>> Windows
>>>>>>>>>>>>> 8.  I'm
>>>>>>>>>>>>> loth to pay big pounds for Office 2010 or whatever. My 32-bit 
>>>>>>>>>>>>> Windows 7 still
>>>>>>>>>>>>> supported my old Office 2003 but that doesn't run in Win 8.  I've 
>>>>>>>>>>>>> downloaded
>>>>>>>>>>>>> Open Office which seems to be well thought of as an alternative 
>>>>>>>>>>>>> to M/S
>>>>>>>>>>>>> Office.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I wonder how to continue do the following,  which worked under 
>>>>>>>>>>>>> Windows 7
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I have a multi-worksheet xls file.
>>>>>>>>>>>>> My J application successfully reads one small named worksheet,  
>>>>>>>>>>>>> not the
>>>>>>>>>>>>> first,
>>>>>>>>>>>>> using readexcel .
>>>>>>>>>>>>> It uses that information and wished to modify the contents of that
>>>>>>>>>>>>> worksheet ONLY.
>>>>>>>>>>>>> Under Windows 7 it successfully called wdoowrite to do this.
>>>>>>>>>>>>> However,  I find the workbook is not updated on the new machine.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> I had used wdoowrite rather than writexlsheets as it appears that 
>>>>>>>>>>>>> the latter
>>>>>>>>>>>>> overwrites the whole file,  but I might have misunderstood it.
>>>>>>>>>>>>> It looks as if writeshtdat might do the job,  but I'm not sure 
>>>>>>>>>>>>> what locale
>>>>>>>>>>>>> info
>>>>>>>>>>>>> to offer as the x argument.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Advice would be welcome!
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Mike
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>>>>> 
>>>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>>> 
>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>> For information about J forums see 
>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>> 
>>>>>>>> ----------------------------------------------------------------------
>>>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>>> ----------------------------------------------------------------------
>>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>> 
>>> ----------------------------------------------------------------------
>>> For information about J forums see http://www.jsoftware.com/forums.htm
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>> 
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to