01-14-2026 05:42 PM
Bonjour,
J'ai un de mes prédécesseurs qui avait développé une interface sous LabWindows/CVI v6.0 sous OS Windows 98. Le PC étant hors service, je souhaiterais recompiler code développé avec LabWindows v6.0 et régénérer l’exécutable avec la dernière LabWindows/CVI 2020.
Est-ce que cela est possible ? dois-je passer par une étape/version LabWindows intermédiaire ? Besoin d'aide pour savoir exactement ce qu'il faut faire ? Questions par rapports aux drivers, etc...?
Pour informations complémentaires :
1) le PC sous OS Windows 98 et LabWindows/CVI v6.0 avec un port série RS232
2) les nouveaux PC avec OS Windows 11 et LabWindows/CVI 2020 ont des ports USB
Merci par avance
William
Solved! Go to Solution.
01-15-2026 03:03 AM
Hello,
according to google you need to port an application from an older cvi6 project up to the last cvi2020 release.
With no details on what the application does, how is developed, which additional toolkit/driver it uses (if any) and so on it is difficult to give you a precise answer.
Take into consideration that some functions/libraries have been superseded and will force you to a rewrite of the application (e.g. Traditional DAQ), other are obsolete but still work (e.g. EasyTab instrument, which can be replaced by built-in tab controls), other have been updated so you need to connect to the correct library and probably have nothing more to do (e.g. Excel interface).
If you have the complete project and a cvi2020 machine I suppose the best you can do is to open the old project, try to compile it and see what happens: you may be lucky and have only minor messages or receive tons of errors due to missing or obsolete libraries and functions.
If you don't want ot use the brute force approach then you may do some preliminary work:
Having said this, porting an application to a compiler 15 years younger then the original one is not a trivial task: at the minimum you may expect a huge list of warning since the newest compiler is smarter in detecting possible problems like uninitialized variables, missing default cases in switch structures and so on; next you may need to find the best compromise between the simple porting with the minimum work and "modernizing" the UI and the code; and I'm not considering the possibility that the original developer have leveraged some particular and maybe not well documented feature of Win98 that has been deprecated and abandoned in subsequent OS releases, which may force you to a redesign of part of the code...
As a last hint, I suggest you follow up this discussion in English if you can: most of the users of this board cannot speak French and is better not to rely excessively to google translator.
01-15-2026 03:09 AM
I forgot to address the communications side. If the program uses serial communications then I suggest to look into the list of devices: you may find that the motherboard actually has a RS232 port which is not ported to the rear pane. In this case there exist adapters to add the port to the PC (e.g. this one)
01-15-2026 03:43 AM
Salut Willy,
Contacte-moi en message privé si tu veux de l'aide pour le portage !
01-15-2026 04:32 AM
Bonjour gDargaud,
Je ne sais pas si ce message est en privé, peux-tu stp me faire un retour de confirmation car je suis nouveau sur le forum / plateforme NI.
Merci
01-15-2026 05:10 AM
Hello,
To complete my previous message, here is the list of input files used in LabWindows/CVI v6.0
We have includes (.c; .h; .uir; .cws; .prj; .obj; .cdb; .fp) files, and icons :
allboite.c
allboite.cws
allboite.h
allboite.h,v
allboite.prj
allboite.uir
allfonctions.c
allfonctions.h
allfonctions.obj
Check.cws
Check.prj
configport.h
configport.uir
etalondeb.cdb
ETALONDEBIT.cws
ETALONDEBIT.prj
grandlogogiat.bmp
icone1.ico
LogoSys.bmp
Main.c
Main.h
Main.UIR
PANELS.H
PORTS.ICO
portserie.c
portserie.h
SREC.C
TOOLBAR.C
TOOLBAR.FP
TOOLBAR.H
TOOLBAR.OBJ
Typespropres.h
For the files generated as output by the compiler LabWindows/CVI v6.0, we have :
Distfile.cab
instmsi.exe
instmsiw.exe
Protoetalonneur.msi.exe
setup.exe
setup.ini
Also, I plane to use USB-RS232 adapter.
Thanks you in advance for you answers
Willy
01-15-2026 08:36 AM
Hi Robetto,
Thanks for your answers. I'm new to this forum, so please excuse me as I don't yet know how to use the forum platform. I've sent another message listing the different files from the previous project using LabWindows v6.0.
01-16-2026 02:24 AM
Hello William,
from what I see you have 3 different projects: one of them may be the father of all but it's not evident, you may try to see which project loads main.c and main.uir and start by that one.
The only files I recognize are toolbar.*: they are probably the toolbar instrument shipped with CVI. In more recent cvi releases the source is not distributed, but I cannot check before cvi2009 now and I don't remember if it was in cvi6. That instrument is still present in cvi2020, though.
I cannot be more precise than this, I'm afraid.
Roberto
02-03-2026 01:31 AM
Hy Willy,
Roberto has already summarized a lot of information that should be useful to you.
Another difference between your version 6.0 and today's (2020) version is that back then you could also choose your compilation language in the LabWindows/CVI management (Visual C or Borland C).
One of the major differences I've identified is in the data size (short int, etc.).
If you have data in binary files that need to be reloaded into structures, you risk having discrepancies.
And with each compilation language change, you have to install again all the NI drivers.
Depending on your predecessor's choice, some libraries, drivers, or parts of your code might also cause you some problems.
But it seems normally possible.
I've already migrated code versions from 8.x (Win NT/98) to 2018 (W7).
Sometimes, and often, it takes a long time, but it's doable.
You will need patience.
Good luck.