INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Jobs

Internationalization problems

Internationalization problems

(OP)
I am trying to convert my VB6 application to spanish. It's still in development, so it's not installed on many computers.

When I install it on one computer in my office, it won't display accented characters. On several other computers, it displays fine. I've checked everything I could think of. Things I have tried:

1. I made sure the same font was used in the app is the same for each computer. It is currently set to Verdana.

2. I checked the charset on each computer... they are all the same. Font.CharSet = 0 (ANSI) on all computers.

3. I checked the codepage on each computer using the GetACP api function. All are the same and set to 1252 - ANSI Latin; Western European (Windows).

There are various operating systems involved, including Windows 7, Windows XP, Server 2008R2, and Windows 10. The misbehaving computer in running Windows 7.

When I install my app on the misbehaving computer, the accented characters do not show properly. When I run the application from another computer on the misbehaving computer, the accented characters show properly. Specifically, on the misbehaving computer, if I browse to \\server-compile\c\ApplicationFolder and execute application.exe, the accented characters are displayed properly. I find this odd because it is the same executable and the same dll's.

I am storing the phrases in a Microsoft SQL Server database. Each computer and applications are connected to the same database.

I don't know what else to look at to try to figure out this problem.

-George
Microsoft SQL Server MVP
My Blogs
SQLCop
twitter
"The great things about standards is that there are so many to choose from." - Fortune Cookie Wisdom

RE: Internationalization problems

There are two ways of doing this: codepages and unicode. Which method are you using?

RE: Internationalization problems

Can you be positive that running the "locally installed" program is not actually running a bad version that ended up in the user's VirtualStore?

Look under C:\Users\{profile name}\AppData\Local\VirtualStore\Program Files

RE: Internationalization problems

(OP)
Xwb, I am only concerned about Spanish at the moment so I really only need ansi.

Dillatante, I am pretty sure I am not running from the virtual store, but I won't be able to confirm this until Monday.

-George
Microsoft SQL Server MVP
My Blogs
SQLCop
twitter
"The great things about standards is that there are so many to choose from." - Fortune Cookie Wisdom

RE: Internationalization problems

>so I really only need ansi

Er, the basic ANSI standard is ASCII, which doesn't have any accents. So perhaps you mean ECMA-94 or ISO/IEC 8859, which are applied through the use of code pages, typically code page Windows-1252 for Western Europe (which is often incorrectly called an ANSI code page, which is Microsoft's fault). So it would appear that the answer to the question is that you are using the default code page.

RE: Internationalization problems

>1. I made sure the same font was used in the app is the same for each computer. It is currently set to Verdana.

Did you try changing the font on the afflicted machine?

RE: Internationalization problems

(OP)
I've been getting slammed with support calls all morning so I haven't had a chance to try anything yet.

Is there a particular font that is better/preferred over other fonts?

-George
Microsoft SQL Server MVP
My Blogs
SQLCop
twitter
"The great things about standards is that there are so many to choose from." - Fortune Cookie Wisdom

RE: Internationalization problems

It would be a rare font (setting aside symbol fonts like Marlett, Windings, etc.) that lacks the glyphs for accented letters used in Spanish.

The preferred font would normally be the system dialog font, which either defaults to the standard for the version of Windows or has been chosen by the user.

The default system font from Vista onward is Segoe UI. Prior to that it was Tahoma for many versions. Before that it was MS Sans Serif, which is why VB6 (actually OLE StdFont) defaults to that creaky old font.

RE: Internationalization problems

The real reason I asked is that a font can, under rare circumstances, become partially corrupt. (temporarily) Using a different font may help track down if the font is the cause, or something more fundamental.

RE: Internationalization problems

(OP)
This is a super busy time of the year for me which is why I am slow to respond. I apologize.

dilletante,
The app does not appear in the virtual store, so it must be running the correct one.

strongm, I have not yet changed the font.

I do have more information. My app uses many activex dll's that I have also created. Many of these dll's are for reports and tools that show selection screens and then performs some sort of action. If I create a new executable to call the dll directly without going through my main application, it is showing the accented characters properly. If I open the same functionality through my app, the accented characters are not displayed correctly.

I don't have VB6 installed on the misbehaving computer so I can't step through the code to see what's going on. I've considered installing it there, but I'm afraid that installing VB6 may fix the issue. My real concern is that when I install my app on an end user's computer, I could have the same problem without having the ability to install VB6 on it.


-George
Microsoft SQL Server MVP
My Blogs
SQLCop
twitter
"The great things about standards is that there are so many to choose from." - Fortune Cookie Wisdom

RE: Internationalization problems

(OP)
I have a little more information to share...

I am getting the spanish phrases from a database. When I read the data from the database using the ADO object, accented characters are getting converted to 2 characters.

In the database I have: permitirá
Shown on the form, I have: permitirá

I have tried 4 different fonts, and they all do the same thing.

-George
Microsoft SQL Server MVP
My Blogs
SQLCop
twitter
"The great things about standards is that there are so many to choose from." - Fortune Cookie Wisdom

RE: Internationalization problems

(OP)
I've solved this problem.

It turns out that the problem wasn't with displaying accented characters. The problem was loading them from a UTF-8 file for storage in the database. I feel a little silly for having missed this before

dilletant & strongm, thank you for your time.

-George
Microsoft SQL Server MVP
My Blogs
SQLCop
twitter
"The great things about standards is that there are so many to choose from." - Fortune Cookie Wisdom

RE: Internationalization problems

>The problem was loading them from a UTF-8

Odd that this only affected one computer, though.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!

Resources

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close