message.c in libnetxms is right for east asian characters
-
-
Hi!
Theoretically it is possible, but it will require a lot of work, because many places in agent code was written with usage of char instead of TCHAR, and because many system APIs on UNIX systems exist only in multi byte or event single byte form. I think that it can be relatively easy to convert Windows agent to unicode, and much harder to convert UNIX agent to unicode. Why you need unicode in agent?
Best regards,
Victor -
-
So you are trying to build agent for WinCE? Then yes, you need to compile it in UNICODE, because WinCE lacks non-unicode versions of most API calls.
-
Hi Victor
Thanks. I noticed that some header files had been modified and I will try after the 1.1.0 is released.
And I want to know how to deal with the IP address changing problem. For example, some devices are in remote site and connected through carrier network. The node's IP address is not the same as last time connected. Does the agent register and server recognizes the agent then change the node's ip address, or there is other solution?
-
-
Hi!
I think it should not be very hard. I'll try to create TCHAR version of opendir/readdir/closedir today. I'll notify you when they will be done.
Best regards,
Victor -
Wide version of opendir/readdir/closedir commited to trunk. Now you can use _TDIR, struct _tdirent, _topendir, _treaddir, _tclosedir.
Best regards,
Victor -
Hi Victor,
Thanks for your port. Now the file system function works well. I port the all the core agent and WINNT and winperf subagent to WINDOWS UNICODE except the hddinfo has a bug. Not really understand the StrStrip function.
I also test the new config relative function, it can read ANSI and UNICODE content in the config file, but using the config->print function, it has problem with MBCS, like east asian characters. Could you check?
-
Hi!
I don't understand what is the problem with Config::print. It uses wide character version of printf, so UNICODE build should print all characters correctly. Or you have problems with ANSI build?
Function StrStrip removes leading and trailing spaces and tabs from given string. It works in both ANSI and UNICODE builds. What exact problem you have?
Best regards,
Victor -
Hi Victor,
I tested the new config API again but it does not work well with east asian characters.
The program is Unicode version, and the config's coding is UTF-8 and ANSI, in the config file there is some east asian characters. In both scenarios, the east asian characters became ?? under Config::print , the others are right.
Thanks
-
-
Hi!
Did you succeed with building UNICODE agent? If yes, it will be nice if you can share diff for converting agent to unicode - I then will be able to incorporate these changes to trunk and make unicode build as default option for Windows platform.
Best regards,
Victor -
-
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login