เหตุใด Windows cmd.exe จึงมีความกว้างไม่เกิน 80 อักขระ


104

ฉันชอบยืดเทอร์มินัลของฉันบนยูนิกซ์ ประวัติหรือเหตุผลเบื้องหลังบรรทัดคำสั่ง windows ง่อยคืออะไร?


2
มันเป็นทางเลือกเช่นเดียวกับสิ่งอื่น ๆ อีกมากมายคือทางเลือก หากคุณมีขนาดคงที่การออกแบบ "หน้าจอ" จะง่ายกว่าเพราะคุณรู้ขีด จำกัด ข้อเสียนั้นชัดเจนไม่ว่าจะเลือกขนาดใดก็ตามมันจะผิดสำหรับใครบางคนหรือบางสิ่งเสมอ หน้าจอ Windows CMD ปัจจุบันเป็นเพียงหน้าจอเดียวย้อนกลับไปในสมัยก่อน และมีความละเอียดไม่มากนักและมีความละเอียดสูงน้อยมากสำหรับเรื่องนั้น
— tvCa

คำตอบ:


147

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


2
อย่าลืมฟอนต์ / สี ไม่มีอะไรดีไปกว่าการกลับไปที่หน้าจอสีเขียวย้อนยุคเมื่อฉันเปิดพรอมต์คำสั่ง 8 ^ D
— Dillie-O

13
คุณหมายถึง "ไม่มีอะไรอื่นนอกจากเปลี่ยนฟอนต์เป็น consolas" hanselman.com/blog/UsingConsolasAsTheWindowsConsoleFont.aspx
— Jimmy

5
ฉันมักจะกระโดดและตั้งค่าความกว้างเป็น 180 และเลื่อนกลับไปที่ 9999 มันไม่เหมือนที่คุณต้องการบ่อยนัก แต่ฉันไม่เคยเจ็บอะไรเลย (แม้จะเป็นเครื่อง 128mb และครั้งเดียวที่คุณต้องการ คุณจะดีใจที่ตั้งค่าไว้ก่อนมือจริงๆความกว้างเป็นความชอบส่วนตัวฉันไม่ชอบเห็นการตัดบรรทัดจากคอมไพเลอร์ของฉันยกเว้นภายใต้สภาวะที่รุนแรง แต่คนอื่นไม่ชอบเลื่อน
— Bill K

4
การเพิ่มความสูงบัฟเฟอร์ของหน้าจอนั้นมีการประเมินต่ำมาก การเลื่อนแบบนั้นเป็นสิ่งที่จำเป็นมากเกินไปเพื่อให้สามารถอ่านผลลัพธ์ของโปรแกรมไปยังหน้าจอได้อย่างสมบูรณ์ (เว้นแต่คุณจะใช้ MORE)
— Coding With Style

22
ใช่ ... แต่ไม่ คุณไม่สามารถปรับขนาดหน้าต่างโดยพลการโดยการลากขอบหน้าต่างและที่นี่เราอยู่ในปี 2012 และยังคงไม่เปลี่ยนแปลง
— Alex B

108

หากคุณเป็นโรคเมาส์คุณสามารถพิมพ์สิ่งนี้ในหน้าต่าง cmd:

mode <cols>,<lines>
mode 80,25
mode 120,50
etc.

11
สิ่งนี้มีประโยชน์มากในการจัดการกับการเรียกระบบไปที่ "cmd / c ... " บนแอปที่ตรวจสอบขนาดของหน้าต่างเพื่อจัดรูปแบบผลลัพธ์ เพียงแค่โยน "โหมด 200,50 &&" ก่อนการโทรและชีวิตจะดี
— โทมัส

คุณสูญเสียการเลื่อนแนวตั้งอย่างน้อยใน Win7
— golimar

44

มันไม่ จำกัด

  1. เรียกใช้ cmd.exe
  2. คลิกไอคอนที่ด้านซ้ายบนของหน้าจอ
  3. เลือกคุณสมบัติ
  4. เลือกแท็บเค้าโครง
  5. ตั้งค่าบัฟเฟอร์และความกว้างของหน้าต่างตามที่คุณต้องการ
  6. คลิกตกลง
  7. เลือกบันทึกคุณสมบัติสำหรับอนาคต ...
  8. คลิกตกลง

คุณอาจต้องการที่จะตรวจสอบคอนโซล เป็นแอปโอเพนซอร์สที่ให้คุณเรียกใช้เชลล์หลายตัวในสภาพแวดล้อมแบบแท็บ คุณยังสามารถตั้งค่าความโปร่งใสอัลฟาของเชลล์


17

RE: เนื่องจาก MS ให้ความสำคัญกับ "ความเข้ากันได้แบบย้อนกลับ" ในหลาย ๆ สิ่งและในกรณีนี้ฉันสงสัยว่ามันเป็นความเชื่อที่ผิดที่จะทำให้คนไม่สบายใจถ้าพวกเขาไม่มีหน้าต่างกว้าง 80 มาตรฐาน

แม้ว่าความเข้ากันได้แบบย้อนกลับจะทำงานได้ค่อนข้างแย่ ฉันไม่คิดว่า Microsoft จะละเอียดถี่ถ้วนเกี่ยวกับการใช้งานมันและฉันเชื่อว่า Microsoft เป็นโปสเตอร์เด็กเพราะแน่ใจว่าเวอร์ชันที่ใหม่กว่าจะไม่สามารถใช้งานได้กับเวอร์ชันเก่า จำนวนมากทำงานไม่ถูกต้องภายใต้ COMMAND.COM ซึ่งเป็นการทำลายประโยชน์ที่มีอยู่อย่างมากไม่ต้องพูดถึงว่าคุณต้องเข้า DOSONLY เพื่อให้บางโปรแกรมทำงานได้อย่างถูกต้องรวมทั้ง Microsoft ได้ลบคำสั่งที่มีประโยชน์ออกไป จริงๆแล้วฉันนึกไม่ถึงว่า Microsoft จะถือ "ความเข้ากันได้แบบย้อนกลับ" ในเรื่องที่สูงมาก

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

ดังที่ได้กล่าวไว้ jmucchiello MODE จะทำงานได้ดีในการปรับขนาดหน้าต่างหากคุณรู้สึกต้องการ

กำหนดค่าอุปกรณ์ระบบ

พอร์ตอนุกรม: MODE COMm [:] [BAUD = b] [PARITY = p] [DATA = d] [STOP = s]
                                [to = on | off] [xon = on | off] [odsr = on | off]
                                [octs = on | off] [dtr = on | off | hs]
                                [rts = on | off | hs | tg] [idsr = on | off]

สถานะอุปกรณ์: MODE [อุปกรณ์] [/ STATUS]

การพิมพ์เปลี่ยนเส้นทาง: MODE LPTn [:] = COMm [:]

เลือกโค้ดเพจ: MODE CON [:] CP SELECT = yyy

สถานะหน้ารหัส: MODE CON [:] CP [/ STATUS]

โหมดการแสดงผล: MODE CON [:] [COLS = c] [LINES = n]

อัตราโดยทั่วไป: MODE CON [:] [RATE = r DELAY = d]

หากคุณเปิดใช้งาน DOSONLY บน CONFIG.NT ของคุณอย่างไรก็ตามเมื่อคุณเปิด COMMAND.COM มันจะสืบทอดความละเอียดบรรทัดสไตล์ DOS ที่เหมาะสมจาก cmd.exe แต่คุณไม่สามารถเรียกใช้ MODE จากภายใน COMMAND.COM หากคุณต้องการปรับขนาดภายใน COMMAND.COM คุณจะต้องใช้คำแนะนำในการประกอบ 16 บิตดังนี้:

ความละเอียดเส้น 80x50 (ไม่มีเฟรมบัฟเฟอร์, ไม่มี SVGA, รองรับแทบจะในระดับสากล)

แก้ปัญหา
A100
MOV AX, 1112
INT 10
INT 20

ช
ถาม

ความละเอียดบรรทัด 132x60 (ไม่มีเฟรมบัฟเฟอร์ต้องใช้ SVGA ไม่ทำงานบนการ์ด ATI gfx โดยปกติจะทำงานบนการ์ด nVidia gfx afaict ทำงานบนการ์ด gfx ในตัวของ Intel เสมอ)

แก้ปัญหา
A100
MOV AX, 4F02
MOV BX, 010C
INT 10
INT 20

ช ถาม

หากคุณป้อนสิ่งนี้ใน COMMAND.COM ของคุณมันจะให้ความละเอียดที่ระบุ (คำเตือน: หากจอภาพของคุณเก่าพอที่จะไม่รองรับโหมดนี้คุณอาจจะต้องทำลายมันทิ้งหมายเหตุด้านข้าง: หากคุณสามารถเรียกใช้ Windows จอภาพของคุณก็น่าจะใช้ได้ข้อจำกัดความรับผิดชอบ: ควรเน้นย้ำและคุณได้รับคำเตือน ดังนั้นจึงไม่ใช่ปัญหาของฉันหากจอภาพของคุณทอด ;-) อย่างไรก็ตามหากคุณใช้สิ่งนี้โดยไม่ได้เปิดใช้งาน DOSONLY COMMAND.COM จะปรับขนาดกลับเป็นขนาดก่อนหน้าทันทีที่แอปพลิเคชัน (ในกรณีนี้เว้นแต่คุณจะเขียนลงใน ไฟล์และดำเนินการนั้น DEBUG) ออก

หรือคุณสามารถใช้ MODE.COM ของ FreeDOS ซึ่งจะทำงานอย่างถูกต้องภายใต้ COMMAND.COM ที่ตั้งค่าเป็น DOSONLY คุณสามารถดึงภาพจากดิสก์อิมเมจได้ที่เว็บไซต์อย่างเป็นทางการ (freedos.org) หรือรับได้ที่http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/dos/mode/2005/

ใหม่ FreeDOS MODE โดย Eric Auer 2003-2005 ใบอนุญาต: GPL. (รุ่น 12may2005)
MODE [อุปกรณ์] [/ STA [TUS]] (แสดงสถานะของอุปกรณ์หนึ่งเครื่องหรือทั้งหมด)
MODE LPTn [:] cols [, [lines] [, retry]] (cols หรือ cpi, 6/8 lpi, ลอง p หรือ n อีกครั้ง)
MODE LPTn [:] [COLS = ... ] [LINES = ... ] [RETRY = ... ] (ลองใหม่: p infinite / n none)
MODE LPTn [:] = [COMn [:] | NUL] (เปลี่ยนเส้นทางข้อมูลเครื่องพิมพ์ไปยังพอร์ตอนุกรมหรือ NUL)
MODE COMn [:] baud, parity, data, stop, ลองใหม่ (อนุญาตค่าว่าง)
โหมด COMn [:] [BAUD [HARD] = ... ] [PARITY = ... ] [DATA = ... ] [STOP = ... ] [RETRY = ... ]
  Baud สามารถย่อให้เป็นคำนำหน้าที่ไม่ซ้ำกันได้ความเท่าเทียมกันสามารถเป็น o / e / n / s / m,
  หลัง 2 ช่องว่าง / เครื่องหมายเฉลี่ยข้อมูลได้ 5..8 หยุด 1..2 การลองใหม่ถูกเพิกเฉย!
  วางแผนแล้ว: ลองอีกครั้ง b / e / r -> busy / error / ready if busy, p / n infinite / no retry.
MODE CON [:] [CP | CODEPAGE] [/ STA [TUS]] (ต้องโหลด FreeDOS DISPLAY)
MODE CON [:] [CP | CODEPAGE] REF [RESH] (ต้องการ DISPLAY)
MODE CON [:] [CP | CODEPAGE] SEL [ECT] = number (ต้องการ DISPLAY)
MODE CON [:] [CP | CODEPAGE] PREP [ARE] = ((codepage) filename) (ต้องการ DISPLAY)
  ใช้ PREP = ((, cp2, cp3,, cp5) ... ) เพื่อเตรียมโค้ดเพจในบัฟเฟอร์อื่น ๆ
MODE [40 | 80 | BW40 | BW80 | CO40 | CO80 | MONO] [, แถว] (แถวสามารถเป็น 25, 28, 43 หรือ 50)
  ใช้ 8, 14 หรือ 16 เป็นค่า 'แถว' หากคุณต้องการเปลี่ยนฟอนต์เท่านั้น
MODE [CO40 | CO80 | ... ], [R | L] [, T] (เลื่อน CGA ไปทางซ้าย / ขวา, T คือโหมดโต้ตอบ)
MODE CON [:] [NUMLOCK | CAPSLOCK | SCROLLLOCK | SWITCHAR] = ค่า
  ค่าสามารถเป็น: + หรือ - สำหรับล็อคหรืออักขระสำหรับ switchar
MODE CON [:] [COLS = ... ] [LINES = ... ] (ค่าที่เป็นไปได้ขึ้นอยู่กับฮาร์ดแวร์ของคุณ)
MODE CON [:] [RATE = ... ] [DELAY = ... ] (อัตราเริ่มต้น 20 ความล่าช้าเริ่มต้น 1)
  อัตราได้ 1..32 สำหรับ 2..30 ถ่าน / วินาทีหน่วงเวลาได้ 1..4 เป็นเวลา 1 / 4..4 / 4 วินาที

ด้วยเหตุผลเดียวกันกับรหัส ASM ที่ฉันให้ไว้เว้นแต่คุณจะดำเนินการใน COMMAND.COM โดยเพิ่ม DOSONLY ลงในไฟล์ CONFIG.NT ของคุณหน้าต่างจะเด้งกลับไปเป็นขนาดก่อนหน้าทันทีเมื่อ MODE.COM ออก

สุดท้ายตามที่คนอื่น ๆ ระบุไว้คุณสามารถปรับเปลี่ยนการตั้งค่าเหล่านี้ได้ง่ายๆเพียงคลิกขวาที่แถบหัวเรื่องของพรอมต์คำสั่งและแก้ไขคุณสมบัติ -> เลย์เอาต์ ในทำนองเดียวกันคุณสามารถตั้งค่าความละเอียดสำหรับทางลัดไปยัง CMD.EXE และไฟล์แบทช์ (คลิกขวาที่ทางลัด -> คุณสมบัติ -> เค้าโครง) สิ่งนี้ใช้ได้กับ CMD.EXE เท่านั้นไม่ใช่ COMMAND.COM


14

คำสั่งง่ายๆในการแก้ไขขนาดหน้าต่างที่ฉันใช้ตลอดเวลา:

wmic

มันจะเปิดบรรทัดคำสั่ง Windows Management Instrumentation และลบขีด จำกัด ขนาด แล้วก็ใกล้กับ+CtrlC


6

ฉันไม่รู้ประวัติเบื้องหลัง แต่รายการสิ่งที่อยากได้จากผู้เขียน PuTTy เป็นโพสต์ที่น่าสนใจที่อธิบายถึงอุปสรรคทางเทคนิคที่เกี่ยวข้องกับการเปลี่ยน cmd.exe ทุกประเภทที่ไม่ง่อย:

http://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist/win-command-prompt.html

คุณไม่ได้พูดถึงว่าคุณกำลังมองหาสิ่งทดแทน แต่ถ้าเป็นเช่นนั้นคุณอาจตรวจสอบการแทนที่ cmd.exe บางอย่างเช่นConsole 2หรือ JP Software's Take Command เป็นต้นฉันยังมีประสบการณ์ที่ดีกับ PuTTy- Cyg ซึ่งให้คุณใช้ PuTTy เป็นเปลือก cygwin


6

ในขณะที่ความกว้างไม่ จำกัด เป็นคำตอบอื่น ๆ แสดงให้ฉันได้พบเสมอว่ามันแปลกที่หนึ่งสามารถลากและปรับขนาดความสูงด้วยเมาส์ แต่ไม่กว้าง

ฉันคิดว่าความกว้าง 80 อักขระเริ่มต้นเกี่ยวข้องกับความเข้ากันได้กับโปรแกรมเก่าที่ถือว่าเทอร์มินัลไม่กว้างเกิน 80 อักขระ ฉันไม่คิดว่านี่เป็นเหตุผลที่เป็นจริงสำหรับทศวรรษที่ผ่านมา


9
ทั้งความกว้างและความสูงสามารถปรับขนาดได้มันก็เกิดขึ้นที่ความกว้างของหน้าต่างเริ่มต้นเท่ากับความกว้างของบัฟเฟอร์ คุณไม่สามารถทำให้หน้าต่างใหญ่กว่าบัฟเฟอร์ได้ดังนั้นตัวเลือกเดียว (ที่มีการตั้งค่า 80 คอลัมน์เริ่มต้น) คือการลดความกว้าง
— efotinis

4

ดังที่คนอื่น ๆ ได้ชี้ให้เห็นว่ามันไม่ได้ จำกัด ไว้ที่ 80 ตัวอักษร แต่ฉันเดาว่าทำไมค่าเริ่มต้นถึง 80 ตัวอักษรน่าจะเป็นเพราะมันเหลือจากวัน DOS ที่การแสดง CRT กว้าง 80 อักขระ

ดูสิ่งนี้ด้วย


จอภาพสมัยใหม่สามารถมีความกว้างมากกว่า 80 อักขระในโหมดข้อความได้หรือไม่?
— macropas

คุณอาจต้องใช้โหมด framebuffer เพื่อให้ทำงานได้ (แต่ฉันอาจจะคิดผิดมันใช้เวลาสักพักแล้ว)
— andersop

มีโหมด SVGA ไม่กี่โหมดที่มีความกว้าง 132 ตัวอักษรโดยไม่ต้องใช้โหมด framebuffer แต่ก็รองรับได้ค่อนข้างยาก หนึ่งในโหมดเหล่านั้นแสดงอยู่ในคำตอบของฉัน
— Coding With Style

3
ย้อนกลับไปไกลกว่านั้น: เหตุผลที่ IBM ทำให้ CRT แสดงคอลัมน์ได้กว้าง 80 คอลัมน์คือการ์ดเจาะมีความกว้าง 80 คอลัมน์
— dan04

2

คุณยังสามารถใช้แอปพลิเคชันเทอร์มินัลอื่นเช่นConsole2ซึ่งช่วยให้คุณปรับขนาดหน้าต่างได้ตามที่คุณต้องการ (นอกเหนือจากสิ่งอื่น ๆ เช่นความโปร่งใสและความสามารถในการใช้แบบอักษรที่คุณต้องการ) มันเป็นแอปพลิเคชั่นที่ยอดเยี่ยมฉันเปลี่ยนมาใช้และตอนนี้ฉันใช้cmd.exeเมื่อฉันต้องทำเท่านั้น


1

เนื่องจากมันจะเลื่อนจากซ้ายไปขวารวมทั้งขึ้นและลงสิ่งแรกที่ฉันทำในระบบคือกำหนดความกว้างของฉันเป็น 180 แล้วบันทึก โดยทั่วไปเพียงพอแล้วเพื่อให้สแต็กเทรซไม่ต้องห่อเป็นส่วนใหญ่ แต่ก็ไม่มากจนคุณต้องรอพื้นที่มากมาย

ในขณะที่คุณอยู่ให้ตั้งค่าขนาดแนวตั้ง (บัฟเฟอร์ย้อนกลับ) เป็น 9 ทั้งหมด คุณจะดีใจที่ได้ทำในบางวัน


1

เนื่องจาก MS ให้ความสำคัญกับ "ความเข้ากันได้แบบย้อนกลับ" ในหลาย ๆ สิ่งและในกรณีนี้ฉันสงสัยว่ามันเป็นความเชื่อที่ผิดที่จะทำให้ผู้คนไม่สบายใจหากพวกเขาไม่มีหน้าต่างกว้าง 80 มาตรฐาน

แน่นอนว่ามันถูกตั้งโปรแกรมไว้สำหรับความกว้าง 80 ตัวอักษรคงที่เมื่อมันค่อนข้างเป็นสากลและการตั้งค่าคุณสมบัติเพิ่มเติมนั้นค่อนข้างจะเป็นการแฮ็ค


1

มีจำนวน จำกัด ลองดูสิ (ฉันหมายถึงขนาดหน้าต่างไม่ใช่บัฟเฟอร์)

คุณจะพบว่าความกว้างสูงสุดที่คุณสามารถตั้งได้นั้นมี จำกัด แต่จะแตกต่างกันไปตามความละเอียดหน้าจอของคุณ หากความละเอียดของคุณตั้งไว้ที่ 1024 x 768 คุณจะพบว่าคุณสามารถรับได้สูงสุด 128 ในความกว้างของพรอมต์คำสั่ง 128/1024 = .125

คุณจะพบว่าอัตราส่วนนั้นสอดคล้องกันทั้งกระดาน ฉันมีเซสชัน RDP ที่ทำงานที่ 2000x768 (ในสองจอภาพสามจอของฉัน) และได้รับความกว้างสูงสุด 250

ตอนนี้มันกลายเป็นว่าใหญ่กว่าขนาดมอนิเตอร์ Actaul ของคุณเล็กน้อย แต่ฉันมีสามจอทั้งหมดที่ใช้เดสก์ท็อปแต่ละตัว (โดยพื้นฐานแล้ว 3 1024x768 ความละเอียด) และถ้าฉันต้องการทำบางสิ่งบางอย่างที่เรียบง่ายโดยยืดพรอมต์คำสั่งบนจอภาพ 2 จอขึ้นไปฉันไม่สามารถทำได้ (ฉันต้องการเมื่อทำสิ่งต่าง ๆ ด้วยเส้นทางที่ยาวมาก (diruse.exe / ฯลฯ ) ...

-ค


2
หากคุณปรับขนาดตัวอักษรให้เล็กลงคุณจะได้ขนาดหน้าต่างที่ใหญ่กว่า (ค่อนข้าง) ใหญ่ ฉันเพิ่งมีความกว้างมากกว่า 300 บนหน้าจอ 1600x1200
— Michael Myers

คุณยังสามารถเพิ่มความกว้างของเส้นให้ใหญ่ขึ้นและเลื่อนหน้าต่างได้ ฉันทำของฉันกว้าง 160 หรือ 180 ตั้งแต่วัน VGA
— Bill K

0

-1

เนื่องจากการปรับปรุงความสามารถในการใช้งานและการทำงานของทุกสิ่งที่การพัฒนาแบบ Unix / GNU ต้องการจะทำลาย Windows ในฐานะแพลตฟอร์มเชิงพาณิชย์สำหรับคู่ค้าของ Microsoft การป้องกันสิ่งนี้หมายถึงผลิตภัณฑ์ของ บริษัท ขนาดใหญ่อื่น ๆ สำหรับนักพัฒนาเช่นเทอร์มินัลที่ได้รับการปรับปรุงและผลิตภัณฑ์ของบุคคลที่สามทั่วไปอื่น ๆ เช่นโปรแกรมประมวลผลคำเครื่องเล่นวิดีโอเป็นต้นไม่ได้แข่งขันกับซอฟต์แวร์ Unix / GNU ที่มีอยู่ หากไม่มีสิ่งนี้ Windows ก็จะไม่ใช่แพลตฟอร์มที่ทำกำไรได้และ Microsoft จะสูญเสียการผูกขาดเดสก์ท็อป

นี่คือสาเหตุที่เทอร์มินัลห่วยไม่มี POSIX API ไม่มีการรองรับ C99 ใน MSVC และรายการต่อไป เพื่อความชัดเจนเทคโนโลยี Unix / GNU ทั่วไปและการพัฒนาไม่ได้รับการสนับสนุนโดยเจตนาเพื่อให้บ้านซอฟต์แวร์เชิงพาณิชย์ขนาดใหญ่ไม่ต้องแข่งขันกับพวกเขา

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.