เหตุใด 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.