Bugs item #1184630, was opened at 2005-04-17 14:50
Message generated for change (Comment added) made by dogu
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=474851&aid=1184630&group_id=54790

Category: Tasks
Group: 0.85
Status: Open
Resolution: None
Priority: 5
Submitted By: Dominik Guder (dogu)
Assigned to: Nobody/Anonymous (nobody)
Summary: Vb6task parse error when parsing VBP file

Initial Comment:
This is a follow up to [ nantcontrib-Bugs-1082302 ]
Vb6task ignors references when parsing the project.
https://sourceforge.net/tracker/?func=detail&atid=474851&aid=1082302&group_id=54790

In additition to paragraph 2.) in 1082302 The major
number of references could also be a HEX value (e.g.
a.1). Therefore the regex for majornumbers must match
hex values to.

Besides this the numbering scheme in VBP file is
different at references (dll) and objects (ocx).
The version number for DLLs seems to be a HEX value
like the
corresponding registry typelib entry. At OCX the
version number seems to be a DEC value. Therefore
converting the VBP entries must be adjusted.
(The Typelib entries in registry are HEX values for both.)

For logging the output should be changed that the
numbers in vbp are displayed instead of the hex
converted values. For more convenience, the file entry
in VBP will be logged if it could't be found

I'll attach the cvs diff to vb6Tasks.cs

So far 
Dominik Guder

----------------------------------------------------------------------

>Comment By: Dominik Guder (dogu)
Date: 2005-05-10 09:33

Message:
Logged In: YES 
user_id=437335

Hi,

is there any progress with this issue? Or do you need
something what I can provide? 
Adding files didn't work. So you may give me a hint, what
else I can do.

Regards 
Dominik

----------------------------------------------------------------------

Comment By: Dominik Guder (dogu)
Date: 2005-04-17 21:48

Message:
Logged In: YES 
user_id=437335

I add an example project with two external files:
Design.dll (Version entry in vbp a.0 / in registry a.0 / com
entry in
Registry: DesignTest)
PdfViewer.ocx (Version entry in vbp 13.0 / in registry d.0 /
com entry
in Registry: Intedis_PdfViewer50)

The file entry for Design.dll in vbp contains an incorrect
path. This is
inteded to force the tlb lookup in function VB6GetTypeLibFile

With the unpatched VB6task ParseProjectFile will ignore the
reference to
Design.dll.

With an updated 'referenceRegEx' to match hex values
ParseProjectFile
will fail on
majorVer = (ushort) double.Parse (...)
since the value contains hex numbers

Changing the number conversion of majorVer to Convert.Uint16
resolved
the check on references (Design.dll), but then the
VB6GetTypeLibFile
couldn't find PdfViewer.ocx anymore, since the entry in vbp
for objects
is dec based.
Therefore the conversion must depend on reference or objects.


----------------------------------------------------------------------

Comment By: Dominik Guder (dogu)
Date: 2005-04-17 15:30

Message:
Logged In: YES 
user_id=437335

Patch File

----------------------------------------------------------------------

Comment By: Dominik Guder (dogu)
Date: 2005-04-17 14:53

Message:
Logged In: YES 
user_id=437335

Patch file

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=474851&aid=1184630&group_id=54790


-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
_______________________________________________
NAntContrib-Developer mailing list
NAntContrib-Developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nantcontrib-developer

Reply via email to