xsharp.eu • VO Application ported to X# - Page 3
Page 3 of 5

VO Application ported to X#

Posted: Wed Jul 26, 2017 6:50 am
by Juraj
Hi All,
I have old project created with CaVo 2.6. Can be imported into X#? If yes, how to proceed?

Juraj

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:02 am
by wriedmann
Hi Juraj,

theoretically it should work the same manner as with a 2.8 application because the xPorter reads AEFs.

But the compiler could give a lot more errors than with a 2.8 application because the 2.7 and 2.8 compilers introduced a lot more checks, and some things that gave no errors in 2.5/2.6 resulted in warnings in later versions, like methods without return statement and some assignments between signed/unsigned numeric variables.

If you have no Vulcan license, you could try to use the Vulcan demo version and try to move your application to X#.

Another possibility would be to acquire the update to VO 2.8 and move your application there. That would also give your a better starting point for the VO class libraries (that cannot be delivered with X# because of license issues).
Anyway, a migration to VO 2.6 to 2.8 would boost your productivity for the time you are working with VO.
But of course it depends how many code you have to move and how important this code is.

Unfortunately I cannot say anything precise because I have never worked with VO 2.6 (moved directly from 2.5 to 2.7 and then to 2.8 ).

Wolfgang

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:13 am
by markus.lorenzi@dvbern.ch
Hi Juraj

the Porter can not read .aefs from previous versions to vo 2.8.
That means you have to Import your 2.6 / 2.7 aef to 2.8 and Export it again.

Markus

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:29 am
by FFF
Markus,
where did you take that from?
VN-Transporter had this limitation (reading projects), but i can't remember the aef-format having changed between Vo versions...

Karl

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:34 am
by wriedmann
Hi Karl, hi Markus,

I have now dowloaded a 2.5 AEF from fabtoys.net and tried to read it with xPorter, and it could transport it without issues.

The AEF format has changed between versions, but the library used by the xPorter should be able to read all formats.

Wolfgang

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:50 am
by Juraj
Hi all,
Where can I download the version XPorter for VO? My current version work only with Vulcan files.

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:54 am
by markus.lorenzi@dvbern.ch
Hi Karl

if I try to Import a 2.7 aef the Transporter gives an error message. If I Import this 2.7 aef into 2.8 and Export it again, then the Transporter works as expected.

Markus

Error Message:

************** Ausnahmetext **************
System.ArgumentOutOfRangeException: Der Wert muss positiv sein.
Parametername: count
bei System.Text.StringBuilder.Append(Char[] value, Int32 startIndex, Int32 charCount)
bei FabToolsNS.FabTools.ReadPSZString(Stream oS, Int32 BlocLength) in C:XIDEProjectsVOXPorterSourceFab_VO_EntitiesFabTools.prg:Zeile 266.
bei Fab_VO_Entities.FabMEFEntity.get_Source() in C:XIDEProjectsVOXPorterSourceFab_VO_EntitiesMEF Entity.prg:Zeile 84.
bei ApplicationDescriptor.CreateFromAef(String cAefFile, VOProjectDescriptor oProject, String cAppName) in C:XSharpDevXSharpsrcToolsVOXPorterSourceVOXPorterxPorter.prg:Zeile 935.
bei xPorter.xPort_AppFromAef(String cAefFile, String cOutputFolder, String cSolutionName, String cAppName) in C:XSharpDevXSharpsrcToolsVOXPorterSourceVOXPorterxPorter.prg:Zeile 327.
bei xPorterUI.xPortButton_Click(Object sender, EventArgs e) in C:XSharpDevXSharpsrcToolsVOXPorterSourceVOXPorterUI.prg:Zeile 471.
bei System.Windows.Forms.Control.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
bei System.Windows.Forms.Button.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladene Assemblys **************
mscorlib
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2101.1 built by: NET47REL1LAST.
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll.
----------------------------------------
VOXPorter
Assembly-Version: 0.0.0.0.
Win32-Version: 1, 0, 0, 1.
CodeBase: file:///C:/Program%20Files%20(x86)/XSharp/VOXPorter/VOXporter.exe.
----------------------------------------
System.Windows.Forms
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2094.0 built by: NET47REL1LAST.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.
----------------------------------------
System
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2093.0 built by: NET47REL1LAST.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll.
----------------------------------------
System.Drawing
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2046.0 built by: NET47REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.
----------------------------------------
SDK_Defines
Assembly-Version: 0.0.0.0.
Win32-Version: 0.0.0.0.
CodeBase: file:///C:/Program%20Files%20(x86)/XSharp/VOXPorter/SDK_Defines.DLL.
----------------------------------------
mscorlib.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2046.0 built by: NET47REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_de_b77a5c561934e089/mscorlib.resources.dll.
----------------------------------------
System.Configuration
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2046.0 built by: NET47REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.
----------------------------------------
System.Core
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2099.0 built by: NET47REL1LAST.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll.
----------------------------------------
System.Xml
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2046.0 built by: NET47REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll.
----------------------------------------
Fab_VO_Entities
Assembly-Version: 0.0.0.0.
Win32-Version: 0.0.0.0.
CodeBase: file:///C:/Program%20Files%20(x86)/XSharp/VOXPorter/Fab_VO_Entities.DLL.
----------------------------------------
XIRES
Assembly-Version: 0.0.0.0.
Win32-Version: 0.0.0.0.
CodeBase: file:///C:/Program%20Files%20(x86)/XSharp/VOXPorter/XIRES.DLL.
----------------------------------------
System.Windows.Forms.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.7.2046.0 built by: NET47REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.
----------------------------------------

************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.

Zum Beispiel:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

Wenn das JIT-Debuggen aktiviert ist, werden alle nicht behandelten
Ausnahmen an den JIT-Debugger gesendet, der auf dem
Computer registriert ist, und nicht in diesem Dialogfeld behandelt.

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:54 am
by wriedmann
Hi Juraj,

VO-xPorter should be installed in the VOXporter subdirectory of your X# directory.
It is a separate application.

Wolfgang

VO Application ported to X#

Posted: Wed Jul 26, 2017 7:59 am
by wriedmann
Hi Markus,

strange.... I have now downloaded the 2.7 version of FabZip and tried xPorter on it, and it worked. Maybe your AEF is damaged and the import/export procedure fixes it?

Wolfgang

VO Application ported to X#

Posted: Wed Jul 26, 2017 8:19 am
by Juraj
Hi Wolfgang,

Thank you for your answers, helped me a lot. I porting my AEF file to X# successfully
and I'm going to remove errors from my code.The error is the most repeated:

error XS9002: Parser: mismatched input '(' expection EOS

my code is:

lOk:=oZoz:CreateOrder("ZOZICO",WorkDir()+"ZOZICO","ICO",{||_field->ICO})

oZoz is DbServer

or:
infobox{SELF,"Indexovanie zoznamu..","Nepodarilo sa preindexovat zoznam firiem."}:Show()
or:
FErase(String2Psz(WorkDir()+"A1.DBF"))

Juraj