This book is for Joanju's open source ABL parser.
Download
You can find pre-built binaries on Joanju's Proparse page at
joanju.com/proparse/.
Proparse for Java and .Net
Proparse is written in Java, and is accessed from Java (or any JVM language) through proparse.jar. It is also compiled to a .Net assembly (propares.net.dll).
Forum (discussions and announcements)
Project (issue tracking and SVN)
Group (all posts to the Proparse audience)
Comments
proparse.net / IKVM code page
Just ran into this when I've had to parse code that's still in code page <strong>ibm850</strong>:
To change the code page that proparse is using, you've got to add a setting of prowin32.exe .NET appConfig, using entries in %DLC%\bin\prowin32.exe.config:
<appSettings>
<add key="ikvm:file.encoding" value="utf8" />
</appSettings>
Mine looks like this now
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1" >
<!-- DO NOT REMOVE THIS probing ELEMENT -->
<probing privatePath="Infragistics\winforms;dotnet" />
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.AppStylistSupport.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.Misc.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinCalcManager.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinChart.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinDataSource.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinDock.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinEditors.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinExplorerBar.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinGauge.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinGrid.DocumentExport.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinGrid.ExcelExport.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinGrid.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinInkProvider.Ink17.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinInkProvider.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinListBar.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinListView.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinMaskedEdit.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinPrintPreviewDialog.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinSchedule.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinStatusBar.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinTabbedMdi.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinTree.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinToolbars.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinTabControl.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.UltraWinSpellChecker.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral"/>
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Shared.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral" />
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Documents.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral"/>
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Excel.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral"/>
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics3.Excel.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral"/>
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics3.Win.UltraWinGrid.ExcelExport.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral"/>
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Infragistics2.Win.SupportDialogs.v9.2" publicKeyToken="7dd5c3163f2cd0cb" culture="neutral"/>
<publisherPolicy apply="no"/>
<bindingRedirect oldVersion="9.2.20092.2017" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2058" newVersion="9.2.20092.2119"/>
<bindingRedirect oldVersion="9.2.20092.2090" newVersion="9.2.20092.2119"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
<appSettings>
<add key="ikvm:file.encoding" value="ibm850" />
</appSettings>
</configuration>