Hi,Dennis I replace openoffice 3.4.1 to openoffice4.1.1. static const ::sal_Int16 OPTIONAL = (sal_Int16)256;//still I commented line
Runo can open a writer with no error . There are may be errors later since i commented that line .But the main problem seems is that the openoffice version is not right. I want to share my pleasure with you and the community. Thanks for all the help. cheers On Fri, Apr 3, 2015 at 11:26 PM, Brick Ma <brickman...@gmail.com> wrote: > 10 files in C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include > has #define OPTIONAL. > I don't know how to do with these files,then i replaced all the OPTIONAL > to XOPTIONAL.Compile is OK,but the script shows the same error .Maybe > something else wrong? > > -Brick > > On Fri, Apr 3, 2015 at 2:52 AM, Dennis E. Hamilton < > dennis.hamil...@acm.org> wrote: > >> Yes, the (#define OPTIONAL OPTIONAL) will break many things, even if it >> removes a parser error message. >> >> Where the error occurred the first time, there are many lines the same. >> See if you can find either declarations or #define statements for any of >> those capitalized names that do not fail. >> >> There may be clues there. >> >> - Dennis >> >> -----Original Message----- >> From: Brick Ma [mailto:brickman...@gmail.com] >> Sent: Thursday, April 2, 2015 08:47 >> To: dev; Dennis Hamilton >> Subject: Re: ruby uno to control openoffice >> >> I wrote a line(#define OPTIONAL OPTIONAL) in PropertyAttribute.hdl. >> It seems works. >> >> E:\RUNO-master\include\com/sun/star/beans/PropertyAttribute.hdl(3) : >> warning C40 >> 05: 'OPTIONAL' : macro redefinition >> C:\Program Files (x86)\Microsoft >> SDKs\Windows\v7.0A\include\windef.h(84) //got u >> : see previous definition of 'OPTIONAL' >> >> There is another error shows as follows. >> >> C:\OpenOffice\Basis\sdk\include\systools/win32/snprintf.h(85) : error >> C2375: 'ru >> by_snprintf' : redefinition; different linkage >> c:\ruby-2.2\include\ruby-2.2.0\ruby/ruby.h(1809) : see declaration >> of 'r >> uby_snprintf' >> >> Rename snprintf in snprintf.h or ruby_snprintf in ruby.h compiles. >> But when i try to open a document,error comes out. >> >> code: >> require 'uno' >> data = {'type' => 'socket', 'host' => 'localhost', >> 'port' => 2083, 'protocol' => 'urp'} >> ctx = Uno::Connector.connect(data) //runo can connect to openoffice,if >> openoffice is not ready,runo will say no connection. >> smgr = ctx.getServiceManager >> desktop = smgr.createInstanceWithContext( >> "com.sun.star.frame.Desktop",ctx) //error comes >> doc = desktop.loadComponentFromURL("private:factory/swriter", "_blank", 0, >> []) >> doc.getText.setString("Hello Ruby!") >> >> error: >> runo_exception_exception, 0 >> #<Uno::Com::Sun::Star::Uno::RuntimeException: >> Uno::Com::Sun::Star::Uno::RuntimeE >> xception> >> t.rb:6:in `method_missing': Uno::Com::Sun::Star::Uno::RuntimeException >> (Uno::Com >> ::Sun::Star::Uno::RuntimeException) >> from t.rb:6:in `<main>' >> shell returned 1 >> :in `method_missing': Uno::Com::Sun::Star::Uno::RuntimeException (Uno::Com >> ::Sun::Star::Uno::RuntimeException) >> from t.rb:6:in `<main>' >> shell returned 1 >> >> The same error as i met before. >> Oh,what should i do? >> >> -Brick >> >> >> On Thu, Apr 2, 2015 at 2:08 AM, Brick Ma <brickman...@gmail.com> wrote: >> >> > Thanks for your patient and detailed reply,Dennis. >> > >> > You are right.OPTIONAL was replaced by preprocessor. >> > cl /P yields module.i >> > OPTIONAL was disappeard in module.i >> > But i have not found where is #define OPTIONAL . >> > I will search again tomorrow. >> > -brick >> > >> > On Wed, Apr 1, 2015 at 10:56 AM, Dennis E. Hamilton < >> > dennis.hamil...@acm.org> wrote: >> > >> >> You cannot disable the preprocessor. That will cause *everything* to >> >> fail. >> >> >> >> Some place, there is a >> >> >> >> #define OPTIONAL <value> >> >> >> >> That you want to work. It might be in an #include file. Ideally, it >> is >> >> in the same file where it is being used, but that may be unlikely. >> >> >> >> You need to find all of the places in the code that uses that header >> and >> >> uses OPTIONAL and it is not in anything like #ifdef OPTIONAL but some >> usage >> >> where it is clear that a variable or expression form is expected in >> regular >> >> code. That is likely the one place where you are seeing the failure. >> >> >> >> The clean fix is to change the name in both places. Most programs are >> >> careful to do this in the first place, to avoid conflicts with other >> usage >> >> of a similar term. >> >> >> >> Because this is an .hdl, it may be more complicated than that. There >> may >> >> also be failures elsewhere that are undetected because they do not >> cause a >> >> syntax error. >> >> >> >> I am not where I can look right now. Nose around. There should be >> some >> >> related definitions in the same part of the source tree. >> >> >> >> - Dennis >> >> >> >> -----Original Message----- >> >> From: Brick Ma [mailto:brickman...@gmail.com] >> >> Sent: Monday, March 30, 2015 08:06 >> >> To: dev; dennis.hamil...@acm.org >> >> Subject: Re: ruby uno to control openoffice >> >> >> >> But with the same PropertyAttribute.hdl i had built c++ sample >> >> DocumentLoader.cxx,and it works . >> >> How can i disable this feature of pre-processor >> >> >> >> -Brick >> >> >> >> On Sun, Mar 29, 2015 at 11:56 PM, Dennis E. Hamilton < >> >> dennis.hamil...@acm.org> wrote: >> >> >> >> > It appears that OPTIONAL is defined to empty string in a >> pre-processor >> >> > definition. >> >> > >> >> > This is probably a conflict with use of OPTIONAL as a way of >> controlling >> >> > code inclusion and not as name of a feature in a bit flag [;<). >> >> > >> >> > - Dennis >> >> > >> >> > -----Original Message----- >> >> > From: Brick Ma [mailto:brickman...@gmail.com] >> >> > Sent: Sunday, March 29, 2015 07:09 >> >> > To: dev >> >> > Subject: ruby uno to control openoffice >> >> > >> >> > Hi,All >> >> > There is a runo on github developed by hanya. >> >> > Ruby-UNO (Ruby-OpenOffice) native bridge. >> >> > >> >> > http://wiki.github.com/hanya/RUNO/ >> >> > >> >> > I spend days to build the runo on window 7 >> >> > >> >> > with ActiveScriptRuby2.2, openoffice 3.4 and vs2010. >> >> > >> >> > i got this error which i dont understand why . >> >> > >> >> > E:\RUNO-master\include\com/sun/star/beans/PropertyAttribute.hdl(20) : >> >> error >> >> > C2513: 'const short' : no variable declared before '=' >> >> > >> >> > but in PropertyAttribute.hdl the line 20 is as the same style as >> other >> >> > line >> >> > >> >> > static const ::sal_Int16 MAYBEVOID = (sal_Int16)1; >> >> > static const ::sal_Int16 BOUND = (sal_Int16)2; >> >> > static const ::sal_Int16 CONSTRAINED = (sal_Int16)4; >> >> > static const ::sal_Int16 TRANSIENT = (sal_Int16)8; >> >> > static const ::sal_Int16 READONLY = (sal_Int16)16; >> >> > static const ::sal_Int16 MAYBEAMBIGUOUS = (sal_Int16)32; >> >> > static const ::sal_Int16 MAYBEDEFAULT = (sal_Int16)64; >> >> > static const ::sal_Int16 REMOVEABLE = (sal_Int16)128; >> >> > static const ::sal_Int16 REMOVABLE = (sal_Int16)128; >> >> > static const ::sal_Int16 OPTIONAL = (sal_Int16)256;//line 20 error1 >> >> > >> >> > I commented line 20 ,build is OK.Then i try to open a docment.But >> error >> >> > comes. >> >> > >> >> > require 'uno' >> >> > data = {'type' => 'socket', 'host' => 'localhost', >> >> > 'port' => 2083, 'protocol' => 'urp'} >> >> > ctx = Uno::Connector.connect(data) >> >> > smgr = ctx.getServiceManager >> >> > desktop = smgr.createInstanceWithContext( >> >> > "com.sun.star.frame.Desktop",ctx)//here error2 >> comes >> >> out >> >> > doc = desktop.loadComponentFromURL("private:factory/swriter", >> "_blank", >> >> 0, >> >> > []) >> >> > doc.getText.setString("Hello Ruby!") >> >> > >> >> > I really want to make it work.Buy it seems kind of hard for me now. >> >> > >> >> > Did error1 yield error2 or something else wrong. >> >> > >> >> > Any help would be appreciated. >> >> > >> >> > >> >> > --------------------------------------------------------------------- >> >> > To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org >> >> > For additional commands, e-mail: dev-h...@openoffice.apache.org >> >> > >> >> > >> >> >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org >> >> For additional commands, e-mail: dev-h...@openoffice.apache.org >> >> >> >> >> > >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org >> For additional commands, e-mail: dev-h...@openoffice.apache.org >> >> >