Quali sono le principali differenze tra la programmazione per Windows XP e per Vista?

StackOverflow https://stackoverflow.com/questions/22674

  •  09-06-2019
  •  | 
  •  

Domanda

Da una desktop application developer punto di vista, c'è qualche differenza tra lo sviluppo per Windows XP e lo sviluppo per Windows Vista?

È stato utile?

Soluzione

Interfaccia Utente

Guardando il Esperienza Utente Di Windows Vista Linee Guida si può vedere che essi hanno cambiato molti elementi dell'interfaccia utente, che si dovrebbe essere a conoscenza.Alcune cose importanti da prendere nota di:

64-bit

Vista a 64-bit edition, e anche se XP non troppo, gli utenti sono più propensi a usare il Vista 64 rispetto a XP 64.Ora hai a che fare con:

UAC

Il Controllo Account Utente apprezzabile influenza le autorizzazioni predefinite che la vostra applicazione è quando si interagisce con il sistema operativo.

Nuove Api

Ci sono nuove Api che sono destinati a nuovi metodi di costruzione delle applicazioni o permettendo nuove funzionalità:

Installatori

Perché le installazioni possono utilizzare solo comune runtime si installa dopo il completamento di una transazione, azioni personalizzate avrà esito negativo se l'azione personalizzata dll richiede il Visual C++ runtime sopra il VS 2005 CRT (senza SP1).

Altri suggerimenti

Non mai si supponga che il tuo utente ha accesso a determinate aree chiave del disco (es.programma di file, directory di windows, ecc).Invece l'account utente predefinito sarà solo in grado di scrivere una piccola parte di loro i dati dell'applicazione.Inoltre, essi non saranno in grado di scrivere globale di aree del registro di sistema - solo l'utente corrente sezione.

Ovviamente si può elevare i propri privilegi, ma che in sé è un compito.

In generale la programmazione di Vista è lo stesso XP, è solo il nuovo account restrizioni devi essere prudente.

Date un'occhiata a questa pagina riguarda l'applicazione "UAC consapevole"

http://www.codeproject.com/KB/vista-security/MakingAppsUACAware.aspx

Non ci può essere, ma una scelta consapevole di fare come sviluppatore.È possibile utilizzare la nuova Vista roba, come UAC e CommandLinks e Aero e così via.Ma non è necessario (anche UAC può essere programmato intorno -- basta non fare niente che ha bisogno di privilegi di amministratore).Se si sceglie di ignorare tutti i Vista roba, quindi non c'è assolutamente nessuna differenza tra i due.

Se si desidera includere quella roba nella tua app, fa la differenza.Ma io direi di non essere un grande uno.E se si astrae le differenze (per esempio, scrivere una funzione che mostra un TaskDialog per Vista, ma che si muti giù ingresso che si danno in un MesssageBox su XP), quindi avrete solo di scrivere contro il proprio codice, e le differenze sembrano quasi nulla.

Inoltre, un sacco di Vista della roba nuova (per esempio, il controllo account utente o Aero) è roba che ti preoccupi di una volta, quando si crea il primo pezzo di funzionalità che lo utilizza, farlo funzionare, e quindi non pensare mai di nuovo mentre si sta sviluppando l'app.

Di gran lunga la parte più dolorosa di spostare un'applicazione da XP a Vista (dal mio punto di vista) si occupa di numerosi servizi e di IPv6 roba che utilizza le porte che in precedenza erano gratis, e di trattare con il Wireless Provisioning -> Native WiFi di transizione.

L'UAC roba è fondamentalmente un punto controverso;c'è molto poco gli sviluppatori di applicazioni devono fare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top