Ho trovato Programmare Windows per essere ancora utile. Grazie all'accento posto da Microsoft sulla retrocompatibilità, tutto il materiale di base (handle di finestre, messaggi, GDI, ecc.) Sembra essere ancora pertinente ed è ben coperto in Petzold. (Se qualcosa è cambiato troppo drasticamente, interromperà troppi programmi Windows esistenti, e l'enorme numero di programmi Windows esistenti è una grande parte del vantaggio di Windows sul mercato.)
Esistono nuove API specifiche, come API di installazione , l' API del pool di thread e GDI+ , e ci sono nuovi argomenti come lavorare nel contesto di Vista e 7 UAC. Ci sono anche diverse nuove funzioni individuali, che Petzold non copre, ma è abbastanza semplice cercare gli argomenti più recenti su MSDN, se necessario. Programmare Windows non copre anche la COM, che può essere una parte importante della programmazione di Windows.
Tieni presente che l'API coperta da Petzold è di livello basso e C-based. (Ci sono alcune API più recenti, come GDI + e alcune delle cose di COM, che sono orientate agli oggetti.) Praticamente qualsiasi sviluppo moderno sarà orientato agli oggetti e userà spesso un framework come .NET o Qt o VCL di Delphi, quindi tu scriverò raramente applicazioni complete che assomigliano al codice di esempio in Programmazione di Windows ; tuttavia, è comunque ottimo per spiegare cosa sta succedendo sotto il cofano.
Mi sono guardato un po 'di tempo fa e non sono riuscito a trovare riferimenti API più recenti. Sospetto che ciò sia dovuto alle dimensioni delle attuali API di Windows; Programmare Windows, quinta edizione è già lunga quasi 1500 pagine, un libro che riguardava qualcosa di nuovo sarebbe troppo grande. Ho trovato un paio di supplementi interessanti per Programmare Windows , anche se non li ho ancora letti:
-
Essential COM , di Don Box - Diverse delle nuove API di Vista sono basate su COM, e Petzold non copre COM.
-
Programmazione di sistema Windows , di Johnson M. Hart - sembra saltare interamente la GUI e Roba GDI che Petzold copre così bene, ma ha molti più dettagli sugli approcci moderni al multithreading, IPC, ecc.
-
Interni interni , di Russonovich, Solomon e Ionescu - meno sulle API e altro su come funziona Windows sotto il cofano. Russonovich forse ne sa di più di chiunque altro all'interno o all'esterno di Microsoft.