2013-02-05 14 views

risposta

11

È possibile utilizzare [NSError errorWithDomain:NSOSStatusErrorDomain code:errorCode userInfo:nil] per ottenere uno NSError che rappresenta lo OSStatus di errorCode. NSError fornisce la possibilità di ottenere un messaggio di errore localizzato dal codice di errore (-localizedDescription) o uno normale non localizzato a scopo di debug (-description).

+1

Mancano però alcuni (possibilmente molti) codici di errore. Ad esempio, il commento di 'ioErr' è l'errore di I/O (bummers) non completamente user-friendly-but-at-least-descriptive, mentre NSError dà semplicemente il generico" L'operazione non può essere completata ", Che è la stessa descrizione fornita per la maggior parte degli altri OSStatus. –

+0

'NSError' è la sostituzione prevista, quindi è spiacevole che non fornisca un output ragionevole per alcuni codici di errore. Sembra degno di una segnalazione di bug ad Apple. – bdash

+0

Grazie. Sembra più complicato passare per un semplice output di debug di NSLog e, come sottolinea Peter, lascia fuori un sacco di errori, ma è bene conoscere la sostituzione – iain

Problemi correlati