06-07-2024 09:12 AM
Every time I run a code that applies Report Generation, a box opens that says:
Loading:
C:/ProgramFiles/National Instruments/LabVIEW 2024/vi.lib/Utility/NIReport.llb/Excel/NI_Excel.lvclass
It takes about 7 seconds to find the right path, why is it?
Solved! Go to Solution.
06-07-2024 11:41 AM - edited 06-07-2024 11:41 AM
@maxnoder1995 wrote:
Every time I run a code that applies Report Generation, a box opens that says:
Loading:
C:/ProgramFiles/National Instruments/LabVIEW 2024/vi.lib/Utility/NIReport.llb/Excel/NI_Excel.lvclass
It takes about 7 seconds to find the right path, why is it?
Its because of "improvement" NI has made with some common files.
Technically this class NI_Excel.lvclass is expected to be in "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\Excel", but was moved to "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\Utility\NIReport.llb\Excel". As result LabVIEW searches this over whole vi.lib again and again.
All what you need is just to create Excel directory junction in "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\"
Just navigate to the folder where the Excel folder to be expected:
cd "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb"
and then make a link:
mklink /j "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\Excel" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\Utility\NIReport.llb\Excel"
After that you should have link like shown:
with following content:
and the message will not appear, because LabVIEW will found this immediately.
06-07-2024 01:59 PM
Hello, Andrey.
Thank you for "finding the fix" for this problem. I noticed that you referred to "Program Files", as opposed to "Program Files (x86)", which leads me to the following questions and observations:
I'm just a little nervous about finding that if I decide two months from now to install a more recent version of LabVIEW, some of these "bugs" might byte me, and I might have difficulty remembering who (reported the bug), what (caused the bug), and how (to fix it).
Thanks for sharing your findings!
Bob Schor
06-07-2024 10:59 PM
@Bob_Schor wrote:
Hello, Andrey.
Thank you for "finding the fix" for this problem. I noticed that you referred to "Program Files", as opposed to "Program Files (x86)", which leads me to the following questions and observations: ...
No, it is not "x64-specific" issue, the 32-bit version of LV2024 is affected as well. The root cause is "breaking change" introduced in LabVIEW 2022 Q3 and later, because in attempt to make support for drivers and toolkits Independent of LabVIEW Version the default location for LVAddons was changed to C:\Program Files\NI\LVAddons. I've got lot of funny moments with NI Vision, because now this library located in C:\Program Files\NI\LVAddons\nivisioncommon\1\vi.lib\vision, and that was "read-only" storage, as result I've got lot of warnings on mass-compile of my project on migration to newest LabVIEW (it is prohibited to recompile VIs at that location), and some issues between 32- and 64- bits compatibility, because also 32-bit LabVIEW installed in "Program Files (x86)" now linked to C:\Program Files\NI\LVAddons\ (you have no C:\Program Files (x86)\NI\LVAddons\ at all). The idea behind is to have single storage, where multiple LabVIEW versions linked — old and new, 32- and 64- bits, but side effect of this change is huge dependencies. Back to RGT — I haven't seen this "searching" dialog in 2023 (don't rememer at least), this could be new 2024-specific issue. In case of using both 32 and 64 bits two junctions needs to be created for each LabVIEW bitness, pointed to the same location for each LabVIEW:
mklink /j "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\Excel" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\Utility\NIReport.llb\Excel"
mklink /j "C:\Program Files (x86)\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\Excel" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\Utility\NIReport.llb\Excel"
Other toolkits using C:\Program Files\NI\LVAddons may be affected in same way, of course.
06-08-2024 08:43 AM
Thank you very much! It worked, only I thought it would help me with another problem but it didn't. I am trying to build a Package with only one VI. I have attached the code of the VI. Without the "Excel Get Worksheet.vi" function the build works, but when I add this function I get an error. Also, I have attached a picture of the error. I would appreciate any help on the subject!
06-08-2024 12:09 PM
This could be an issue with JKI software or side effect of the previous change. But the same trick will work also in this case. This VI "Excel Get Worksheet.vi" is expected to be in "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\excel.llb\", but technically located in "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\excel.llb\", so you can create another junction of "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office" in "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons". This one will be not sufficient, when you will try to build, then will be asked for the next "missing" files, you will need to create another junction for Word, etc. Finally, after three-four created links (unfortunately I didn't noted all of them) it will work:
Small tip for you — I using Far Manager in ConEmu, and links creation in Far Manager is much easier than mkdir command, just hit Alt+F6:
06-08-2024 02:18 PM
I'm not a cmd person. It was very difficult for me to understand it but I managed. I wrote down all the commands you executed in cmd to make it work:
mkdir "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\excel.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\excel.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\_exclsub.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\_exclsub.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\_wordsub.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\_wordsub.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\NI_ReportGenerationToolkit.lvlib" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\NI_ReportGenerationToolkit.lvlib"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\word.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\word.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\Toolkit" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\Utility\NIReport.llb\Toolkit"
Why does an end user need to do such things?
06-08-2024 08:15 PM
@maxnoder1995 wrote:
I'm not a cmd person. It was very difficult for me to understand it but I managed. I wrote down all the commands you executed in cmd to make it work:
mkdir "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\excel.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\excel.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\_exclsub.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\_exclsub.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\_wordsub.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\_wordsub.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\NI_ReportGenerationToolkit.lvlib" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\NI_ReportGenerationToolkit.lvlib"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\addons\_office\word.llb" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\addons\_office\word.llb"
mklink /J "C:\Program Files\National Instruments\LabVIEW 2024\vi.lib\Utility\NIReport.llb\Toolkit" "C:\Program Files\NI\LVAddons\rgt\1\vi.lib\Utility\NIReport.llb\Toolkit"
Why does an end user need to do such things?
In his initial response, @Andrey explained that NI decided (in a recent version of LabVIEW) to move some of the links to Microsoft Office products to a new location, creating an incompatibility for some LabVIEW installations. I hope that they'll repair this problem shortly and push out patches.
Bob Schor