logo       

Re: JAWIN Digest - 17 Aug 2004 to 18 Aug 2004 (#2004-77): msg#00020

windows.devel.jawin

Subject: Re: JAWIN Digest - 17 Aug 2004 to 18 Aug 2004 (#2004-77)


Morten,
        attached is a patch to the jawinuserguide_dll.html, containing an overview (my understanding of it) of the instruction strings and the stack size. When you get a chance, please review it. I am not 100% confident that there are no inaccuracies in the explanation, and I tried not to make it too detailed or involved. Next, I will probably try to go over all instruction strings and document some examples of their usage. Along these lines, I was wondering : why does the Transform.cpp use literals in the process() method, instead of using the pre-defined values from instructions.h ?

        I am also working on a Parameters class that would automate & simplify most of the basic instruction string building, some of the marshalling of ints, strings, buffers, etc, and stack size calculations. I will provide that together with the generated structs from VJ++. For handling structs, my idea is to basically  extend the Struct classes created by VJ++ (which contain all data elements), and have the child class implement a predefined interface (e.g. JawinCStruct), which will define the operations that will be necessary for the Parameters class (e.g. marshal, marshallOut, size, token, etc).  

        Regarding my initial impression that JTB was able to generate stubs for regular dll-s (without type info compiled in them) - I double checked the updated documentation and it explicitly states that it is not supported. So, I was either looking at an older version of the docs, or I misunderstood - the current documentation is very clear about it.

       


> Date:    Wed, 18 Aug 2004 14:04:49 +0200
> From:    Morten Andersen <moa@xxxxxxxxx>
> Subject: Re: Passing byte arrays into C functions
>
> Hi Alex
>
> A couple of quick notes, I will probably return with more later, when I
> find better time.
>
> Alex Kotchnev wrote:
>
> >
> >>Some of the things your are talking about are of interest.  If you have
> >>a sourceforge account I would be happy to turn it on for Jawin and work
> >>with you on your projects.
> >
> >
> >    My sourceforge username is polrtex.
>
> First, of course, welcome on board :-). Please let me know if you get
> any problems setting up your build environment for Jawin (it should be
> pretty straightforward as described in the docs/jawindeveloper.html
> document, but there could be some special issues that we have overlooked).
>
> >
> > I was initially under the impression that the Jawin type browser was able
> > to generate code from dll-s (I think that the documentation had something
> > mentioning it).
>
> If it is a DLL containing any of the COM structures mentioned on the
> jawintypebrowser.html page, we are able to generate code for some/most
> structures.
>
> But if you are thinking of an "old" DLL with published "DLL Entry
> Points" (such as the Win32 API), we are not able to do it. I think this
> is what the documentation in the jawintypebrowser.html page says, but if
> you find the exact location where we have written it incorrectly, please
> feel free to correct it.
>
> (you would probably also want to consult the new jawinuserguide_dll.html
> file, with information about calling DLL entry points).
>
> >
> > I will collect examples as I work through my Win32 programming book. I
> > will have to write-up my summary understanding of the marshalling in
> > layman's terms the way I understand it(for me, it was quite a steep curve
> > to figure out how the marshalling works and what it is all about - I am
> > not all that good with C and I am not all that familiar with what goes
> > into the stack, how big it has to be, etc). I have constructed in my head
> > an explanation of the whole marshalling business, I will do a write up and
> > send for review to see if I understand things correctly.
>
> Sounds great, I assume you are still talking about the marshalling when
> calling DLL entry points? - Your writing could probably finish section
> 3.2 in the jawinuserguide_dll.html document, where i newer got finished
> on explaining the instruction string and stacksize (please feel free to
> ask on everything, no matter how trivial and simple the question feels,
> one could still waste _hours_ tumbling around in the marshalling code -
> and there is a big chance that either Roger, Robert or myself can answer
> the question quickly).
>
> >
> > I am not very certain what you are referring to here. The examples &
> > documentation will be an ongoing thing (no timeline). Currently, I have
> > all the structs and constants for win32 generated (from VJ++) and they
> > compile. The only thing that I might have to do is remove some of the MS
> > generated @dll.import javadoc tags, and I can send them in. The generated
> > functions signatures don't compile yet.
>
> Sounds great. You should also check the content of the
> org.jawin.donated.win32 package (in the stubs/src folder) and the
> org.jawin.win32 package in the main src folder.
>
> The org.jawin.win32 package contains some Win32 API structures used
> internally in Jawin. The org.jawin.donated.win32 package contains some
> stubs I think Stuart wrote once, for manipulating with some of the Win32
> API's (eg. there is code for manipulating the registry).
>
> >
> > I also have stubs generated for MS Word and Excel that compile and work -
> > as I had mentioned before, I am not sure how much value that has, since
> > anyone who can run the Jawin browser can generate them on their own (with
> > a few minor fixes). The value that I see in them is breaking them up in a
> > separate project, that will come compiled & bundled with the Jawin .dll,
> > so that Java developers that don't know anything about Jawin (and don't
> > need to know anything about Jawin), can just drop the jar in their
> > classpath and have full access to the MS Office APIs.
>
> This is just what the donated packages are for. They are build into the
> jawin-stubs.jar file (this was not in the last binary release, so you
> will have to build "ant deploy" from the CVS-head yourself to get this
> file).
>
> Best Regards
> Morten
>
> ------------------------------
>
> Date:    Wed, 18 Aug 2004 16:01:03 -0400
> From:    Mukund Wassan <miyengar@xxxxxxxxxxxxxx>
> Subject: Re: Getting Out Parameter value in Jawin
>
> Hi Morten,
>
> Its a great new feature! that works great!
> Thank you very much for sparing the time for the reply.
> BTW, the jawin documentation update is fantastic.
>
> Thanks & Cheers to the Jawin team,
> Mukund
>
> ------------------------------
>
> End of JAWIN Digest - 17 Aug 2004 to 18 Aug 2004 (#2004-77)
> ***********************************************************


Regards,

Alex Kotchnev
Developer / Systems Analyst
Diversified Information Technologies

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
CONFIDENTIALITY NOTICE: If you have received this e-mail in error, please immediately notify the sender by e-mail at the address shown.  This e-mail transmission may contain confidential information.  This information is intended only for the use of the individual(s) or entity to whom it is intended even if addressed incorrectly.  Please delete it from your files if you are not the intended recipient.  Thank you for your compliance.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


Attachment: jawinuserguide_dll.patch
Description: Binary data

<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise