Rumah >pembangunan bahagian belakang >Golang >Mengapa Warna ANSI Tidak Dipaparkan dalam Konsol Windows 10 Saya?

Mengapa Warna ANSI Tidak Dipaparkan dalam Konsol Windows 10 Saya?

Barbara Streisand
Barbara Streisandasal
2024-11-01 02:29:28675semak imbas

Why Are ANSI Colors Not Displaying in My Windows 10 Console?

Dayakan Sokongan Warna ANSI pada Windows 10: Dilema Berterusan

Pada Windows 10, menambah warna pada output konsol menggunakan urutan pelarian ANSI ialah ciri yang agak terkini. Walau bagaimanapun, isu pelik baru-baru ini muncul apabila warna ANSI gagal dipaparkan dengan betul pada mesin tertentu.

Ringkasan Situasi:

Seorang pengguna melaporkan bahawa aplikasi yang memaparkan warna ANSI dalam konsol tiba-tiba berhenti berfungsi. Apl ini berfungsi seperti yang dimaksudkan pada komputer riba lain tetapi gagal pada mesin Windows 10 mereka sendiri (v14393).

Penyiasatan dan Penyelesaian Masalah:

  • Memadamkan entri pendaftaran HKLMConsole dan memulakan semula telah terbukti tidak berkesan.
  • Mengubah suai tetapan pintasan untuk memastikan ia bukan penyebabnya telah tidak membuahkan hasil.
  • Menjalankan aplikasi sebagai pengguna berbeza pada mesin yang sama masih mengakibatkan kegagalan .

Penyelesaian:

Kunci untuk menyelesaikan isu ini terletak pada mendayakan pemprosesan terminal maya pada Windows. Tetapan ini diperkenalkan dalam kemas kini yang menyebabkan masalah.

Untuk mengaktifkan pemprosesan terminal maya, tambah kod berikut pada fungsi init() dalam aplikasi Go anda:

<code class="go">import (
    "golang.org/x/sys/windows"
    "os"
)

// +build windows

func init() {
    stdout := windows.Handle(os.Stdout.Fd())
    var originalMode uint32

    windows.GetConsoleMode(stdout, &originalMode)
    windows.SetConsoleMode(stdout, originalMode|windows.ENABLE_VIRTUAL_TERMINAL_PROCESSING)
}</code>

Kod ini mengubah suai mod konsol untuk mendayakan pemprosesan terminal maya, memastikan urutan pelarian warna ANSI dihuraikan dan dipaparkan dengan betul.

Kesimpulan:

Dengan melaksanakan penyelesaian di atas, isu ini warna ANSI yang tidak berfungsi pada Windows 10 akan diperbaiki. Dengan mendayakan pemprosesan terminal maya, aplikasi anda sekali lagi boleh memaparkan warna yang kaya dalam konsol, tanpa mengira sistem atau tetapan pengguna.

Atas ialah kandungan terperinci Mengapa Warna ANSI Tidak Dipaparkan dalam Konsol Windows 10 Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn