Quali sono i requisiti per le console a schermo intero in Windows 7?


10

Quando si tenta di passare a una console a schermo intero in Windows 7, viene visualizzato l'errore Questo sistema non supporta la modalità a schermo intero. Degna di nota è la parte relativa a "questo sistema" , in cui si afferma che alcuni sistemi supportano le console a schermo intero. Allo stesso modo, se si tenta di utilizzare la SetConsoleDisplayModefunzione API, viene restituito l'errore 120: questa funzione non è supportata su questo sistema. , sempre con "questo sistema" .

La maggior parte dei sistemi potrebbe fare console a schermo intero in Windows XP e funziona in modalità provvisoria di Windows 7, quindi cosa diavolo ha bisogno di Windows 7 per farlo funzionare in un avvio normale?

Messaggio di errore della console a schermo intero


1
Stavo per provare, ma non ho una versione hardware a 32 bit di Windows 7. Funziona senza problemi con una VM VMWare.
KCotreau,

1
@grawity, anche oggi, il POST è in 80x50. Le moderne schede grafiche supportano ancora VESA.
Synetech,

2
@Synetech inc: In tutti questi sistemi, vedo uno schermo 80x25. 25 righe, non 50.
Michael Trausch,

1
Come si produce quella finestra di messaggio (nello screenshot)? Sul mio sistema Windows 7 (Home Premium a 64 bit), Alt + Invio non fa nulla e non esiste alcuna voce di menu "Schermo intero".
Andreas Rejbrand,

1
@AndreasRejbrand, hai ragione; L'ho appena provato su un sistema a 64 bit con gli stessi risultati. Immagino che sia stato rimosso del tutto da Windows a 64 bit. :-|
Synetech,

Risposte:


4

Come suggerito, posterò il mio commento precedentemente come risposta separata:

Il problema è che il nuovo modello di driver non supporta i programmi in modalità testo VGA. Che siano 8, 16, 32 o anche 64 bit, non importa. Non so se in realtà sia supportata una delle vecchie modalità VGA a schermo intero. Vedere support.microsoft.com/kb/926657

La cosa più importante da notare è che questo è colpa del modello del driver, non delle capacità grafiche della scheda. Praticamente ogni singola scheda grafica là fuori supporta le modalità VGA di base, sia VGA standard che almeno un sottoinsieme relativamente comune di modalità VESA. Non so davvero nulla del ragionamento che sta dietro alla perdita di tale funzionalità da parte di Microsoft: non è come se i produttori di schede madri o i produttori di schede grafiche decidessero all'improvviso di abbandonare il supporto per VGA.

(Si noti inoltre che praticamente tutte le schede moderne nelle loro modalità native non sono VGA, ma una cosa completamente diversa. Capita solo che parlano l'insieme degli standard VGA di base.)


1
Probabilmente perché non è stato considerato lo sforzo di supportare la console a schermo intero VGA in WDDM, soprattutto perché Windows a 64 bit non ha NTVDM.
Yuhong Bao

1
Non sono sicuro di cosa abbia a che fare la mancanza di NTVDM; NTVDM non ha nulla a che fare con i modelli di driver dello schermo, né vecchi né nuovi. Ho il sospetto che il motivo principale per cui hanno perso il supporto è perché semplifica enormemente il codice richiesto per i driver grafici; non devono più supportare tutte quelle vecchie modalità che quasi nessuno usa più. Anche i moderni sistemi Linux non usano più le modalità dello schermo VGA sulle moderne schede grafiche, optando invece di impostare la modalità grafica una volta all'avvio e di farcela.
Michael Trausch,

1
NTVDM è un grande utente della console a schermo intero VGA. Ad esempio, viene utilizzato quando un programma DOS passa a una modalità grafica VGA.
Yuhong Bao,

2

vai su Gestione dispositivi

adattatore schermo

seleziona la tua scheda grafica fai clic destro su di essa

e disabilitarlo

È tutto

tutti i programmi dos funzionano a schermo intero dal momento in cui si desidera

puoi riattivarlo quando mai necessario .... :-)

Oppure puoi usare il comando WMIC, dopo averlo usato vedrai il pulsante di ingrandimento abilitato nella finestra ma non ho mai lavorato in quell'ambiente.


1
Puoi verificarlo facilmente. Ho funzionato in questo modo senza abilitare la scheda grafica. :)
avirk

1
Questa è la soluzione a cui stavo sfuggendo. La disabilitazione del driver disattiva DWM.
surfasb,

1
Sì @surfasb sono d'accordo con te, ma solo questo può abilitare lo schermo intero in Windows 7. E non c'è una lunga procedura per farlo in soli 3-4 passaggi.
aprile

1
Ho appena impostato il mio prompt dei comandi con 300 righe e un buffer di 800 righe. . .
surfasb,

1
@avirk, la disabilitazione dell'accelerazione hardware gli consente di funzionare e, quando si disabilita la scheda grafica, ha lo stesso effetto (sebbene la semplice disabilitazione dell'accelerazione sia più semplice e sicura). Ad ogni modo, non è la soluzione poiché non è diverso da quello in esecuzione in modalità provvisoria. Sto cercando di scoprire quale tipo di scheda o driver è necessario per eseguirlo in modalità normale , accelerazione hardware e tutto il resto.
Synetech,

1

Il nuovo DWM non è compatibile con i programmi a 16 bit a schermo intero.


1
Tuttavia, la maggior parte dei programmi da riga di comando sono a 32/64 bit. E a DWM non importa in entrambi i casi: le finestre della console sono visualizzate da CSRSS.
user1686

2
Il problema è che il nuovo modello di driver non supporta i programmi in modalità testo VGA . Che siano 8, 16, 32 o anche 64 bit, non importa. Non so se in realtà sia supportata una delle vecchie modalità VGA a schermo intero. Vedere support.microsoft.com/kb/926657
Michael Trausch il

1
@grawity. In realtà, a DWM importa. Sono abbastanza sicuro che il motivo sia perché DWM funziona a un livello superiore rispetto ai programmi della console. Pertanto, ciò richiederebbe alcune enormi modifiche al design. blogs.msdn.com/b/oldnewthing/archive/2007/12/31/6909007.aspx
surfasb

3
Quindi vediamo, supporta una configurazione morente. Fai in modo che gli sviluppatori scrivano driver che supportano due modelli di driver. Anche se i driver erano solidi, l'applicazione ha una forte possibilità di crash e abbattere l'intero sistema. Tutti incolpano M $. Inoltre, UAC non è supportato. Privilegi di amministratore per tutti. Sembra una strategia vincente lì.
surfasb,

2
Questo è il tipo di schifezze che devo sentire al lavoro. "Perché non possiamo supportare Super Gadget 2000? Tutte le altre aziende ce l'hanno." o "Perché non possiamo supportare Super OLD Gadget -200? Tutte le altre aziende ce l'hanno." Se vuoi supportarlo per tutti nel tuo programma aperto, ti comprerò anche una torta. Non è che odio XP. Odio solo le persone che presentano problemi, ma non presentano soluzioni. . . Cavolo, è come se tutti urlassero "FIX THE DEFICIT!" Come? "Ummmm, lo paghi ..."
surfasb,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.