ทำไมการตั้งค่ารูปแบบวันที่และเวลาใน Windows ของฉันส่งผลกระทบต่อภาษาเริ่มต้นสำหรับแอปพลิเคชัน


3

พฤติกรรมนี้ทำให้ฉันอายุมากขึ้น ฉันอาศัยอยู่ในประเทศเยอรมนี แต่ฉันต้องการระบบปฏิบัติการและแอพพลิเคชั่นที่ติดตั้งทั้งหมดเป็นภาษาอังกฤษ
ดังนั้นเมื่อใดก็ตามที่ฉันติดตั้งระบบ Windows ของฉันฉันจะติดตั้งเวอร์ชันภาษาอังกฤษ ฉันเปลี่ยนสถานที่ (แผงควบคุม -> นาฬิกาภาษาและภูมิภาค -> เปลี่ยนตำแหน่ง) เป็น "สหรัฐอเมริกา"

อย่างไรก็ตามเช่น 90% ของเวลาเมื่อฉันติดตั้งแอปพลิเคชันเพิ่มเติม (เช่น VirtualBox เป็นต้น) มันจะเลือกภาษาเยอรมันเป็นภาษาเริ่มต้น พฤติกรรมนี้สามารถสังเกตเห็นได้ทั่วทุกที่

วิธีเดียวในการเปลี่ยนแปลงสิ่งนี้คือการเปลี่ยนรูปแบบวันที่และเวลา ทันทีที่ฉันเปลี่ยนเป็น "อังกฤษ (สหรัฐอเมริกา)" โปรแกรมที่ได้รับผลกระทบทั้งหมดจะใช้ภาษาอังกฤษ จากนั้นฉันยังสามารถปรับโปรไฟล์กลับไปเป็นสิ่งที่ฉันต้องการ (ซึ่งก็คือสิ่งที่ฉันทำ) และในที่สุดฉันก็ได้รับผลลัพธ์ที่ต้องการ

ทำไมสิ่งนี้ถึงเกิดขึ้น 90% ของโปรแกรมเมอร์ทั้งหมดไม่สามารถใช้ API ที่ถูกต้องเพื่อกำหนดภาษาที่ผู้ใช้ต้องการได้หรือไม่? นี่เป็นวิธีกำหนดภาษาเริ่มต้นภายใต้ Windows หรือไม่ ฉันเพิ่งตั้งระบบไม่ถูกต้องหรือไม่?


+1 สำหรับคำถาม! ฉันมีปัญหาเดียวกันในสเปน - แม้แต่ Firefox add-on ก็ไปที่หน้าภาษาสเปน การเปลี่ยนเขตเวลา / สถานที่ / ภาษาเป็นสหราชอาณาจักรไม่ได้สร้างความแตกต่าง (Win7)
BrianA

1
ฉันคิดว่าคุณโดนหัวด้วย "90% ของโปรแกรมเมอร์ทั้งหมดไม่สามารถใช้ API ที่ถูกต้อง" นี่เป็นวิธีที่รวดเร็วสกปรกและขี้เกียจอย่างไม่น่าเชื่อที่จะคาดเดาการตั้งค่าภาษาที่อาจถูกต้อง 99% ของเวลา
Shinrai

คำตอบ:


2

ฉันเพิ่งตั้งระบบไม่ถูกต้องหรือไม่?

ใช่แล้ว แน่นอนคุณไม่ได้อ่านแท็บที่คุณกำลังดูอยู่

นี่เป็นวิธีที่รวดเร็วสกปรกและขี้เกียจอย่างไม่น่าเชื่อที่จะคาดเดาการตั้งค่าภาษาที่อาจถูกต้อง 99% ของเวลา

ไม่ถูกต้อง. โปรแกรมติดตั้งกำลังใช้Windows National Language Support APIเพื่อรับระบบภาษาและภาษาที่คุณได้กำหนดค่าเพื่อกำหนดภาษาที่จะให้คุณป้อนข้อมูลสถานที่นั้นถูกตั้งค่าด้วยแท็บ "รูปแบบ" ในส่วนของแผงควบคุมนั้น .

คุณกำลังใช้แท็บ "ตำแหน่ง" สถานที่ตั้งแตกต่างจากสถานที่และภาษาไม่น้อยเพราะ. NET API สำหรับสถานที่เหล่านั้นไม่ได้ทำงานบน Windows ก่อนหน้า Windows NT เวอร์ชัน 6.1 API สถานที่ตั้งแตกต่างไปจากเดิมอย่างสิ้นเชิงซึ่งไม่มีแม้แต่ใน Windows XP ก่อน Service Pack 3 ตัวเขียนโปรแกรมติดตั้งที่ต้องการให้มีตัวติดตั้งที่ทำงานบน Windows NT ก่อนรุ่น 6.1 จะใช้ locale API เพราะนั่นคือสิ่งที่ มีอยู่และสิ่งที่ใช้งานได้

นอกจากนี้ยังเป็นสิ่งที่ถูกต้อง

มีความแตกต่างระหว่างรหัสทางภูมิศาสตร์และภาษาของส่วนติดต่อผู้ใช้และคุณจะได้รับอย่างแน่นอน สถานที่หรือรหัสทางภูมิศาสตร์ของคอมพิวเตอร์เป็นที่ที่มันร่างกายมีและนั่นคือสิ่งที่คุณจะต้องตั้งบนแท็บ "สถานที่" ในแผงควบคุม ภาษา UIเป็นภาษาที่คุณต้องการที่จะเห็นสิ่งที่แสดงให้เห็นถึงคุณในและที่ตั้งในการรวมกันในสถานที่อื่น; รวมถึงการตั้งค่าภาษาที่กำหนดโดยแท็บ "รูปแบบ" ในแผงควบคุม

มันบอกว่าที่ด้านบนสุดของแท็บ "ที่ตั้ง" สิ่งที่มันมีไว้สำหรับ ทำไมคุณคิดว่าการตั้งค่าคอมพิวเตอร์ของคุณให้ได้รับ "ข้อมูลท้องถิ่นเช่นข่าวและสภาพอากาศ" สำหรับสหรัฐอเมริกาเพราะคุณบอกระบบว่าคุณอยู่ในสหรัฐอเมริกาเป็นสิ่งที่ถูกต้องที่จะทำเมื่อคุณ ตั้งอยู่ในประเทศเยอรมนี ค้นหาเครื่องของคุณในตำแหน่งที่มีอยู่จริงและตั้งค่าภาษาและโลแคลเป็นภาษาและสกุลเงิน / หมายเลข / วันที่จัดรูปแบบที่คุณต้องการดูในส่วนติดต่อผู้ใช้

กล่าวโดยย่อ: เกือบ 100% ของโปรแกรมจากผู้จำหน่ายต่าง ๆ ไม่ได้ทำงานอย่างที่คุณคิด มันเป็นความคิดของคุณที่ผิดปกติไม่ใช่รายการ


ทำไมรูปแบบที่ใช้สำหรับกำหนดภาษา ฉันตั้งค่าระบบปฏิบัติการเป็นภาษาอังกฤษ แต่ตั้งค่ารูปแบบเป็นภาษาสวีเดน เมื่อติดตั้งโปรแกรมใหม่โปรแกรมจะเริ่มต้นเป็นภาษาสวีเดน ไม่มีวิธีในการตรวจจับภาษา OS (win 7)?
tidbeck

1
ดังนั้นในขณะที่แหล่งที่มาของปัญหาที่แท้จริงอยู่ใน Windows โดยใช้รหัสทางภูมิศาสตร์เป็นการตั้งค่าภาษาสำหรับ National Language Support API ผู้พัฒนา / ผู้เผยแพร่ App ควรละทิ้ง API นี้ไปนานแล้วและหาวิธีอื่นในการนำเสนอทางเลือกภาษา ดังนั้นไม่มีความคิดของเราไม่ผิดซอฟต์แวร์เป็น ตำแหน่งทางกายภาพ! = ภาษาที่ต้องการ - สิ่งนี้จะยากมากแค่ไหน?
kluka

ฉันเห็นด้วยและมีปัญหาเดียวกันทั้งหมด ภาษาระบบของฉันเป็นภาษาอังกฤษ แต่รูปแบบวันที่และเวลาเป็นภาษาเยอรมัน บางทีมันซับซ้อนเกินไปที่จะทำแบบนั้น แต่ฉันจะชอบรูปแบบตัวเลขภาษาอังกฤษอีกครั้ง ในภาษาเยอรมันคุณใช้เครื่องหมายจุลภาค (,) เพื่อแยกทศนิยมขณะที่ภาษาอังกฤษคุณใช้จุด (.) ดังนั้นภาษาอังกฤษได้ บน numpad, ภาษาเยอรมัน,. สวิสเยอรมันอีกครั้งมี ที่นั่นเหมือนภาษาอังกฤษ นี่อาจเป็นสิ่งที่มันซับซ้อนเกินไป คุณวาดเส้นที่ไหน
TJJ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.