07-29-2026 03:37 PM
I’ve just taken a quick look at the recently released LabVIEW 2026 Q3 with "enhanced Unicode support". I can now enter UTF‑8 text into string controls (is it possible to set UTF‑8 as the default, so no need to switch it manually each time?). However, captions still show question marks instead of Unicode characters:
Am I missing something?
Solved! Go to Solution.
07-30-2026 05:26 AM
@Andrey_Dmitriev wrote:
I’ve just taken a quick look at the recently released LabVIEW 2026 Q3 with "enhanced Unicode support". I can now enter UTF‑8 text into string controls (is it possible to set UTF‑8 as the default, so no need to switch it manually each time?). However, captions still show question marks instead of Unicode characters:
Am I missing something?
Yes I'm afraid you do, although it's kind of not obvious. 😁
There is a section in the release notes that states:
LabVIEW does not support UTF-8 encoding for strings in the following areas and functions:
- Paths
- Menus
- Control and indicator labels
- Enumerations
- Error clusters
- I/O refnums
- Some VI Server methods and properties
- Call Library Function Node
- .NET functions
- ActiveX functions
- NI and third-party driver and toolkit functions
While I can understand that Labels do not support it, I'm afraid they overlooked the Caption being a simple string that should indeed be able to support it. If you look at the VI Server properties for the text itself, the caption and the label, they all support the "Is UTF-8?" property, but only for reading. Looks to me like it's still a bit a hot wired feature. They managed to add a menu option to change the text control itself, but forgot or had no time to do it to the caption. And the VI Server property is read only for all of them, despite that it can be changed interactively for the text control. It's all still a bit inconsistent. Also Paths should of course support it too, but since paths are an entirely seperate datatype it seems they didn't get to add it to more than the string control yet.
And I hate the fact that they did not add an option to the Call Library Node string parameters for this. At least a string parameter should simply accept a UTF-8 string control without broken wire. Bonus points if it would be an extra selection where one can select between System, UTF-8, and UTF16 and LabVIEW does whatever conversion from the diagram type is needed.
07-30-2026 06:14 AM
@rolfk wrote:
There is a section in the release notes that states:
LabVIEW does not support UTF-8 encoding for strings in the following areas and functions:
- Paths
- Menus
- Control and indicator labels ...
Yes, but captions are not listed as exception. Such "UTFication" is almost useless.
Well, I can understand labels, but even in Rust source code, I can name variables in such a manner. It will generate only a warning, but the code will still compiled and work.
However, captions are a must have. If I had to replace all captions with borderless UTF-8 strings, I would be going straight to hell when maintaining such code.
It should be possible everywhere that text appears on the screen.
Good attempt, but no.
07-30-2026 08:34 AM
Didn't captions used to be the only reliable thing that worked with Unicode?
07-30-2026 08:36 AM
Hello Andrey,
I don't have LabVIEW 2026 Q3 at the moment, but it looks like the captions (and few others "strings") can be migrated to UTF-8 encoding by using a new Tool. If I understood correctly what they said.
As stated here :
Can you check it please ? I would also like to know the answer. 🙂
07-30-2026 08:49 AM
I am seeing that the control caption properly displays UTF-8 characters.
07-30-2026 09:14 AM
@Darren wrote:
I am seeing that the control caption properly displays UTF-8 characters.
Thank you, Darren, for the confirmation.
Interestingly, I see the same behavior on both of my PCs (Windows 11 Pro and Windows 11 LTSC). Whether I type the text manually or use copy and paste, I get only this:
07-30-2026 11:01 AM - edited 07-30-2026 11:05 AM
LabVIEW 2026 Q3 supports UTF-8 encoding in two areas: control data and control attributes.
For data, you can right-click on string controls and select the encoding.
For control attributes (including captions), you need the VI to be in UTF-8 encoding:
You can migrate existing VIs to UTF-8 using the Tools»UTF-8 Migration Tool.
You can create new UTF-8 VIs using the File»New dialog [VI»From Template»Unicode (UTF-8)].
Note: when you place string controls on UTF-8 VIs, they will default their data representation to UTF-8 encoding.
There's also a shipping example in LabVIEW 2026\examples\UTF-8\Multilingual User Interface.
I look forward to helping you take advantage of UTF-8 in LabVIEW and collecting your feedback on future enhancements!
07-30-2026 12:14 PM - edited 07-30-2026 12:21 PM
@Christina_R wrote:
For control attributes (including captions), you need the VI to be in UTF-8 encoding:
This way works, thank you!
Usually I create new VIs by pressing Ctrl+N and only rarely use templates (or I use my own). I checked the settings, but not the VI’s properties or Tools Menu. As an end user, I expect that I can just create a VI, type something anywhere, and it will appear exactly as typed — meaning a coherent, unified design. But right now it’s not very intuitive: you have individual switches on each control, a “global” VI type, a migration tool, and so on. It feels a bit like C++ hell with char, wchar_t, std::string, etc. A little fragmented. Where we need to pay attention is when external code is called — that’s a different story.
But at least it works, and I’m much happier than before. Thank you again. It’s very unfortunate that the menus are still not in UTF‑8, but hopefully this will be added in future versions — it’s essential.