The line olevarfree__p propVals
seems incorrect and should be iuRelase instead. Вт, 09 июл 2013, David Mitchell писал(а): > I tried a more accurate usage of SafeArrayDestroy: > > SafeArrayUnaccessData_oleutil_ memr propVals, 8 1 4 > SafeArrayDestroy_oleutil_ memr propVals, 8 1 4 > > This also crashed J801_64 when executing SafeArrayDestroy. It seemed > to work ok using J801_32. > > I am beginning to wonder if there is a 32bit/64bit issue with olesafearray. > > On 7/9/2013 9:35, bill lam wrote: > >I guess at least it needs the memf. To avoid memory leak. > > > >On 9 Jul, 2013, at 9:18 PM, David Mitchell <davidmitch...@att.net> 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 <davidmitch...@att.net> 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 > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm