Codici di errore e di diagnostica

Documentazione della versione v0.1.0-beta.3Vedi il sorgente su GitHub

Traduzione della pagina originale in inglese di OmsiLaunch 0.1.0-beta3. La pagina inglese è normativa: in caso di differenze prevalgono la pagina inglese e il codice.

Questa pagina è il riferimento normativo per ogni codice di PublicErrorCodes (src/OmsiLaunch.Api/PublicErrorCodes.cs): 142 codici di errore OL_E_ e un avviso OL_W_, raggruppati per categoria del catalogo, oltre ai codici di diagnostica informativi che non sono errori. Per ogni codice la pagina indica dove il codice attuale lo solleva, che cosa significa, come arriva al chiamante (eccezione lanciata, campo del risultato, voce di diagnostica, risposta del piano di controllo o envelope della CLI) e che cosa fare. I significati sono ricavati dai punti in cui il codice viene sollevato; quando un codice è definito ma non ha alcun percorso attuale che lo sollevi, la pagina lo indica.

Pagine correlate: API pubblica, codici di uscita, LaunchSpec, ciclo di vita della sessione, transazioni e recupero, piano di controllo locale, controllo runtime, profili di sessione, plugin permanente.

Come arrivano i codici#

SuperficieSignificato
LanciatoUn'eccezione il cui Message inizia con il codice (InvalidOperationException, IOException, TimeoutException, InvalidDataException, FileNotFoundException, ArgumentException, SessionProfileException). La CLI estrae il codice dal messaggio e lo mappa su un codice di uscita (CliProgram.Classify).
Diagnostica del pianoUn LaunchDiagnostic in SessionPlan.Diagnostics; qualsiasi codice OL_E_ rende IsRunnable falso (CLI: piano NOT RUNNABLE, uscita 1).
Diagnostica della sessioneUn LaunchDiagnostic in SessionStatus.Diagnostics; lo stato della sessione è Failed (CLI: uscita 1). OL_E_START_SESSION, OL_E_PROCESS_SUPERVISION e OL_E_RESTORE_FAILED incapsulano un codice interno nel proprio messaggio.
Risultato runtimeRuntimeCommandResult.ErrorCode con Succeeded = false.
Dettaglio runtimeRuntimeCommandResult.ErrorCode = OL_E_RUNTIME_OPERATION_FAILED e il codice specifico come primo token di Values["detail"] (con Values["exception"]). È in questo modo che viene esposto ogni codice InvalidOperationException/ArgumentException lato plugin.
Risposta di controlloErrorCode di una risposta del piano di controllo locale (LocalControlResponse).
Envelope della CLIerror.code nell'envelope --json, oppure <code>: <message> sulla console; il codice di uscita è indicato.
TelemetriaUn nome di evento runtime che l'host mappa su una diagnostica della sessione.

Cli#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_CANCELLEDCliProgram.ClassifyÈ sfuggita una OperationCanceledException (Ctrl+C o un'attesa del client annullata).Envelope della CLI, uscita 7Ripetere il comando.
OL_E_INTERNALCliProgram.ClassifyÈ sfuggita un'eccezione senza codice OL_E_: JSON /spec malformato, un membro obbligatorio della spec nullo, un errore imprevisto.Envelope della CLI, uscita 10Leggere il messaggio e <root>\.omsilaunch\diagnostics\<sessionId>-host.log; correggere l'input; segnalare il problema se non ha spiegazione.
OL_E_TIMEOUTCliProgram.Classify; LocalControlPlane.TryRequestAsyncÈ sfuggita una TimeoutException senza codice; oppure il client del controllo locale era connesso a un owner che non ha risposto entro il timeout (l'owner esiste, quindi il caso non viene segnalato come OL_E_NO_ACTIVE_SESSION). (I timeout della mailbox riportano invece OL_E_RUNTIME_REQUEST_TIMEOUT.)Envelope della CLI, risposta di controllo; uscita 5 da Classify, uscita 7 per una risposta di controlloRiprovare; verificare che OMSI e l'owner rispondano.
OL_E_WINDOWS_HOST_MISSINGCliProgram.RunAsync (/silent)OmsiLaunchW.exe non si trova accanto a OmsiLaunch.exe.Envelope della CLI, uscita 7Reinstallare il pacchetto.
OL_E_WINDOWS_HOST_START_FAILEDCliProgram.RunAsync (/silent)Process.Start di OmsiLaunchW.exe non ha restituito alcun processo.Envelope della CLI, uscita 7Controllare i file del pacchetto e i permessi; eseguire senza /silent per vedere l'errore.

Compatibilità#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_BUILD_VALIDATION_FAILEDOmsiLaunchService.ApplyTelemetry su plugin.build.invalidIl controllo del build eseguito dal plugin all'interno del processo (profilo Omsi23004_692EBFBF più la sonda VMT nativa) è fallito sebbene l'host avesse accettato l'eseguibile, per esempio un build Steam LAA presente nella allow-list il cui layout in memoria è diverso, oppure un OMSI modificato con patch.Diagnostica della sessione (Failed)Usare il build validato a runtime; vedere compatibilità.
OL_E_UNSUPPORTED_BUILDSessionPlanner (omsi.profile.OMSI23004 non disponibile)Omsi.exe manca, oppure la sua dimensione/SHA-256 non corrisponde né all'impronta del profilo né alla allow-list.Diagnostica del pianoInstallare il build supportato OMSI 2.3.004.
OL_E_UNSUPPORTED_OPERATING_SYSTEMSessionPlanner (runtime.current-windows-x64 non disponibile); viene lanciato anche da CurrentWindowsX64Platform.ValidateCurrent, che il servizio non chiamaNon è Windows 10 o successivo, oppure il sistema operativo o il processo host non è x64.Diagnostica del piano (CLI: uscita 3 quando lanciato)Eseguire su Windows 10 o successivo a 64 bit.
OL_E_UNSUPPORTED_OS_ARCHITECTURESolo CurrentWindowsX64Platform.ValidateCurrentL'architettura del sistema operativo o dell'host non è x64. Il servizio non chiama ValidateCurrent; nessun percorso attuale lo solleva.Lanciato (PlatformNotSupportedException) solo da quel metodoVedere il sorgente src/OmsiLaunch.Process/RuntimePlatform.cs.

Contenuti#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_ENTRYPOINT_NOT_FOUNDLaunchValidationNEW_MAP senza EntrypointIdentity e con PresentedEntrypointIndex non impostato o negativo.Diagnostica del pianoImpostare PresentedEntrypointIndex (/entrypoint-index:<n>); individuare i punti di ingresso con /list:entrypoints /map:<id>.
OL_E_ENTRYPOINT_REQUIREDSessionPlanner (world.presented-entrypoint non disponibile)La mappa NEW_MAP è stata risolta, ma non c'è né un indice presentato né un'identità. Accompagna sempre OL_E_ENTRYPOINT_NOT_FOUND.Diagnostica del pianoCome sopra.
OL_E_HOF_NOT_FOUNDSessionPlannerPlayerVehicle.Hof non è un Vehicles\...\*.hof installato.Diagnostica del pianoUsare un'identità ottenuta da /list:hofs. (I campi del veicolo del giocatore sono comunque non eseguibili su questo build.)
OL_E_MAP_NOT_FOUNDLaunchValidation; SessionPlannerValidazione: NEW_MAP con MapIdentity non impostato o non nella forma maps\<dir>\global.cfg. Pianificatore: la mappa non è installata.Diagnostica del pianoUsare un'identità ottenuta da /list:maps.
OL_E_NOT_FOUNDCliProgram.ClassifyÈ sfuggita una FileNotFoundException/DirectoryNotFoundException senza codice, per esempio /list:repaints con un /vehicle-scope sconosciuto, oppure /list:entrypoints con una /map sconosciuta.Envelope della CLI, uscita 6Correggere l'identità.
OL_E_REPAINT_NOT_FOUNDSessionPlannerPlayerVehicle.Repaint non è un elemento .cti del modello (verificato solo quando Model è impostato).Diagnostica del pianoUsare un'identità ottenuta da /list:repaints /vehicle-scope:<bus>.
OL_E_SITUATION_MAP_NOT_FOUNDSessionPlannerLa mappa referenziata all'interno del file .osn selezionato non è installata.Diagnostica del pianoInstallare la mappa o scegliere un'altra situazione.
OL_E_SITUATION_NOT_FOUNDLaunchValidation; SessionPlannerSAVED_SITUATION senza SituationIdentity, oppure il file .osn non è installato.Diagnostica del pianoUsare un'identità ottenuta da /list:situations.
OL_E_VEHICLE_NOT_FOUNDSessionPlannerPlayerVehicle.Model non è un Vehicles\...\*.bus installato.Diagnostica del pianoUsare un'identità ottenuta da /list:vehicles.

Installazione#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_INSTALLATION_BUSYInstallationLease.Acquire; OmsiLaunchService.RecoverPendingAsync; FileConfigurationTransaction.RestorePendingAsyncIl lease dell'installazione (blocco esclusivo, Local\OmsiLaunch.Installation.<hash>) è detenuto da un altro owner in questa sessione di accesso, oppure un processo OMSI registrato nel journal (PID + ora di creazione + percorso dell'eseguibile; oppure qualsiasi Omsi.exe della radice per un journal oltre HandoffCreated senza PID) è ancora attivo.Avvio: diagnostica della sessione tramite OL_E_START_SESSION. Recupero: lanciato (InvalidOperationException / IOException). CLI: uscita 7.Arrestare l'altro owner (session stop) o attendere che OMSI termini, quindi riprovare oppure eseguire /recover.
OL_E_INSTALLATION_NOT_FOUNDLaunchValidationInstallation.RootPath è vuoto.Diagnostica del pianoPassare la directory di installazione.
OL_E_INSTALLATION_NOT_WRITABLESessionPlanner (transaction.exact-restore non disponibile); anche ValidateCurrentLa radice non esiste, ha l'attributo di sola lettura oppure non ha una directory plugins\.Diagnostica del pianoIndicare un'installazione di OMSI reale e scrivibile.
OL_E_PERMANENT_PLUGIN_HASH_MISMATCHRuntimeArtifactSet.ValidateInstalled (piano e avvio)Un file plugins\OmsiLaunch.* installato differisce dall'hash in release-manifest.json (o dalla chiusura di riferimento in assenza di manifest).Diagnostica del piano (piano non eseguibile, CLI: uscita 1); diagnostica della sessione tramite OL_E_START_SESSION solo se i file cambiano tra la pianificazione e l'avvioReinstallare il pacchetto OmsiLaunch in modo che plugins\ e il manifest concordino.
OL_E_PERMANENT_PLUGIN_MANIFEST_INCOMPLETERuntimeArtifactSet.ValidateInstalled (piano e avvio)Il manifest non ha una voce per un file del plugin richiesto.Diagnostica del piano; diagnostica della sessione tramite OL_E_START_SESSION nella stessa race condition descritta sopraReinstallare il pacchetto.
OL_E_PERMANENT_PLUGIN_MISSINGRuntimeArtifactSet.ValidateInstalled (piano e avvio)Un file plugins\OmsiLaunch.* richiesto è assente dall'installazione di OMSI, oppure un file plugins/ elencato in release-manifest.json non è installato.Diagnostica del piano; diagnostica della sessione tramite OL_E_START_SESSION nella stessa race condition descritta sopraInstallare la chiusura del plugin permanente (installazione).
OL_E_PLATFORM_CAPABILITY_MISSINGSolo CurrentWindowsX64Platform.ValidateCurrentCurrentPlatformSupported falso. Non chiamato dal servizio; nessun percorso attuale lo solleva.Lanciato solo da quel metodoVedere il sorgente.
OL_E_RELEASE_MANIFEST_INVALIDReleaseManifest.TryReadPluginHashes / ParsePluginHashesrelease-manifest.json è vuoto, non è JSON, non ha un array files, oppure ha una voce senza path/sha256, un hash che non è di 64 cifre esadecimali, un percorso assoluto, che contiene :, un segmento vuoto, . o .., oppure un percorso elencato due volte (confronto senza distinzione tra maiuscole e minuscole, / e \ equivalenti). Un BOM UTF-8 è accettato.Piano: incapsulato in OL_E_RUNTIME_ARTIFACT_MISSING; avvio: tramite OL_E_START_SESSIONReinstallare il pacchetto.

InvalidArgument#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_INVALID_ARGUMENTLaunchValidation; CliInput.Parse/ClassifyValidazione: Date.Value/Time.Value impostato mentre la modalità non è Explicit. CLI: flag sconosciuto, valore mancante, intero o intervallo non valido, /saved combinato con /map//entrypoint, route di comando sconosciuta, qualsiasi ArgumentException/FormatException senza codice.Diagnostica del piano; envelope della CLI, uscita 2Correggere l'argomento.
OL_E_INVALID_SETTING_VALUEConfigurationCatalog.CreatePatch (avvio)Il valore di un'impostazione semantica è fuori intervallo, non booleano, non compreso nell'insieme consentito oppure malformato (graphics.particles richiede quattro campi). I valori non vengono validati in fase di pianificazione.Diagnostica della sessione tramite OL_E_START_SESSIONUsare un valore della tabella delle impostazioni.
OL_E_SETTING_NOT_WRITABLESessionPlanner; CliInput.BuildSpecAsync; BuildTransactionalOverlaysLa chiave esiste ma non è scrivibile (advanced.multithreadingCalculate, advanced.multithreadingTextureLoad, graphics.texture, graphics.textureFilter).Diagnostica del piano; CLI: uscita 2Rimuovere la chiave.
OL_E_UNKNOWN_SETTINGSessionPlanner; CliInput.BuildSpecAsync; BuildTransactionalOverlaysLa chiave non è in ConfigurationCatalog.Diagnostica del piano; CLI: uscita 2Usare una chiave del catalogo.

LaunchSpec#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_SPEC_INVALIDLaunchSpecJson.ParseLa radice non è un oggetto JSON, oppure la deserializzazione non ha prodotto alcun record.Lanciato (InvalidDataException), CLI: uscita 2Correggere il file (LaunchSpec).
OL_E_SPEC_NOT_FOUNDLaunchSpecJson.LoadAsyncIl file /spec non esiste.Lanciato (FileNotFoundException), CLI: uscita 6Verificare il percorso.
OL_E_SPEC_TOO_LARGELaunchSpecJson.LoadAsyncIl file supera 1 MiB.Lanciato (InvalidDataException), CLI: uscita 2Ridurre il file.
OL_E_SPEC_UNKNOWN_PROPERTYLaunchSpecJson.ValidateUn membro che non è una proprietà pubblica del record in quella posizione; messaggio OL_E_SPEC_UNKNOWN_PROPERTY: $.Path.Name.Lanciato (InvalidDataException), CLI: uscita 2Rimuovere o rinominare il membro.

LocalControl#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_CONTROL_COMMAND_UNKNOWNGestore dell'owner (OwnerSession)Il comando non è session.status, session.events, session.stop né runtime.execute con un argomento operation.Risposta di controllo; CLI: uscita 7Usare un comando supportato.
OL_E_CONTROL_FAILEDClient CLI (ReportForwarded, CliEventWatch)L'owner ha risposto Ok = false senza codice di errore.Envelope della CLI, uscita 7Leggere il messaggio; controllare la console e la diagnostica dell'owner.
OL_E_CONTROL_HANDLER_FAILEDLocalControlPlane.ServeAsyncIl gestore dell'owner ha lanciato un'eccezione il cui messaggio non contiene alcun codice OL_E_ (per esempio la sessione era già chiusa), oppure la risposta del gestore non ha potuto essere serializzata.Risposta di controlloLeggere session status; riavviare l'owner se non è più presente.
OL_E_CONTROL_MESSAGE_INVALIDLocalControlPlane (entrambi i lati)Prefisso di lunghezza negativo o superiore a 64 KiB (compreso un frame di richiesta sovradimensionato), frame vuoto, JSON null, una richiesta senza Command, oppure JSON non decodificabile.Risposta di controllo / envelope della CLIUsare il protocollo documentato (piano di controllo locale).
OL_E_CONTROL_MESSAGE_TOO_LARGELocalControlPlane.TryRequestAsync (client)La richiesta serializzata del client stesso supera 64 KiB. Viene segnalato al chiamante; non viene inviato nulla.Risposta di controllo / envelope della CLIRidurre la richiesta.
OL_E_CONTROL_RESPONSE_TOO_LARGELocalControlPlane.ServeAsync (owner)La risposta dell'owner non rientra nel frame da 64 KiB. L'owner risponde con questo errore tipizzato invece di scartare la risposta. session.status e session.events non lo raggiungono mai: la loro cronologia degli eventi viene ridotta a partire dai più vecchi per rientrare nel limite.Risposta di controllo / envelope della CLIRiprovare; per gli eventi, leggerli più spesso.
OL_E_CONTROL_PROTOCOLLocalControlPlane, TryRequestBoundAsyncIl ProtocolVersion della richiesta non è 0.1; la risposta dell'owner non ha potuto essere decodificata o era vuota; l'owner ha chiuso la connessione senza rispondere oppure la connessione si è interrotta dopo essere stata stabilita; l'owner non ha riportato alcun SessionId.Risposta di controllo / envelope della CLIAllineare le versioni di client e owner; leggere session status.
OL_E_CONTROL_SESSION_MISMATCHGestore dell'ownersession.stop o runtime.execute senza un session_id uguale a quello della sessione attiva.Risposta di controllo; CLI: uscita 7Leggere prima session.status e associare la richiesta (la CLI lo fa automaticamente).

Altro#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_PLAN_NOT_RUNNABLEOmsiLaunchService.StartSessionAsyncIl piano passato ha IsRunnable = false, oppure la nuova pianificazione all'avvio non è eseguibile (Omsi.exe modificato, contenuti rimossi, chiusura del plugin mancante); il messaggio elenca i codici OL_E_ attuali.Lanciato (InvalidOperationException); CLI: uscita 1Pianificare di nuovo e correggere le voci di diagnostica elencate.

Presentazione#

Tutti sollevati da SessionVisualAssets (src/OmsiLaunch.Core/SessionVisualAssets.cs). In fase di pianificazione sono incapsulati in OL_E_SESSION_PRESENTATION_INVALID (il messaggio contiene il codice); all'avvio emergono tramite OL_E_START_SESSION.

CodiceSignificato / causa tipicaCosa fare
OL_E_ITX_PROFILE_INVALIDIl file .itx è vuoto, ha un numero dispari di righe non vuote, oppure una riga URL non è un URL http/https assoluto.Usare coppie di righe URL/destinazione.
OL_E_ITX_PROFILE_MISSINGOverrideProfilePath (risolto rispetto alla directory di lavoro del processo) non esiste. Lanciato come FileNotFoundException.Passare un percorso .itx esistente.
OL_E_ITX_PROFILE_REQUIREDInternetTextures.Mode è Override senza OverrideProfilePath. CLI: uscita 2 quando lanciato.Fornire /internet-textures-profile:<file.itx>.
OL_E_ITX_TARGET_OUTSIDE_TEXTURE_PATHUna riga di destinazione è un percorso assoluto, contiene .., inizia con \, si risolve al di fuori dell'installazione, non ha un componente Texture\ oppure attraversa una junction/un collegamento simbolico.Usare destinazioni relative Texture\....
OL_E_SPLASH_ASSET_DIRECTORY_MISSINGCustomAssetDirectory non esiste.Correggere la directory.
OL_E_SPLASH_ASSET_MISSINGENG.bmp o <LANG>.bmp manca dalla directory degli asset, oppure manca un assets\splash\<LANG>.bmp del pacchetto durante il popolamento di .omsilaunch\assets\splash.Fornire i file BMP / reinstallare il pacchetto.
OL_E_SPLASH_FORMAT_UNSUPPORTEDUn BMP della splash screen non è una bitmap BM 640×480 a 24 bit.Convertire l'immagine.

Processo#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_PROCESS_CLEANUP_FAILEDOmsiLaunchService (percorsi di errore dell'avvio e del supervisore)La terminazione di OMSI o l'attesa della sua uscita durante la pulizia dopo un errore ha lanciato un'eccezione; segue il messaggio interno.Diagnostica della sessione (aggiunta a una sessione Failed)Assicurarsi che non rimanga alcun Omsi.exe, quindi eseguire /recover se un journal è in sospeso.
OL_E_PROCESS_CREATION_TIME_FAILEDCurrentWindowsX64Platform.StartAsyncGetProcessTimes è fallito subito dopo CreateProcessW (Win32=<code>); il processo viene terminato.Diagnostica della sessione tramite OL_E_START_SESSIONRiprovare; controllare antivirus e permessi.
OL_E_PROCESS_EXITED_EARLYOmsiLaunchService.SuperviseAsyncOMSI è terminato prima di gameplay.entered (crash, chiusura di una finestra di dialogo di errore di OMSI, chiusura della finestra).Diagnostica della sessione (Failed); il ripristino viene eseguitoControllare i log di OMSI e logfile.txt; esaminare RuntimeEvents per l'ultimo evento del plugin.
OL_E_PROCESS_START_FAILEDCurrentWindowsX64Platform.StartAsyncCreateProcessW è fallito (Win32=<code> nel messaggio).Diagnostica della sessione tramite OL_E_START_SESSIONRisolvere l'errore Win32 (file mancante, accesso negato, criterio).
OL_E_PROCESS_SUPERVISIONOmsiLaunchService.SuperviseAsyncIl ciclo del supervisore ha lanciato un'eccezione (lettura della telemetria, attesa/terminazione del processo, scrittura del journal); OMSI viene terminato e si tenta il ripristino.Diagnostica della sessione (Failed)Leggere il messaggio interno e il log dell'host.
OL_E_PROCESS_TERMINATE_FAILEDCurrentWindowsX64Platform.TerminateTerminateProcess è fallito (Win32=<code>).All'interno dei messaggi OL_E_PROCESS_SUPERVISION / OL_E_PROCESS_CLEANUP_FAILEDTerminare OMSI manualmente, quindi eseguire /recover.
OL_E_PROCESS_WAIT_FAILEDCurrentWindowsX64Platform.WaitForExitAsyncWaitForSingleObject sull'handle del processo è fallito.All'interno dei messaggi OL_E_PROCESS_SUPERVISION / OL_E_PROCESS_CLEANUP_FAILEDCome sopra.

Runtime#

«Dettaglio runtime» significa ErrorCode = OL_E_RUNTIME_OPERATION_FAILED con il codice all'inizio di Values["detail"].

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_CAMERA_PRESET_FAMILY_UNSUPPORTEDOmsiCameraLockWritercamera.lock con preset mentre family è 2 (esterna) o 3 (mappa); i preset esistono solo per il conducente (0) e il passeggero (1).Dettaglio runtimeOmettere preset oppure usare la famiglia 0/1.
OL_E_DATE_TIME_APPLY_FAILEDLaunchValidationModalità Date/Time Explicit senza valore o con componenti fuori intervallo. Il nome è storico; si tratta di un errore di validazione in fase di pianificazione.Diagnostica del pianoCorreggere il valore (e tenere presente che data/ora esplicite non sono eseguibili su questo build).
OL_E_MAKEVEHICLE_BUS_NOT_FOUNDCurrentRuntimeControl.MakeBasicRoadVehicleroad-vehicles.spawn: il percorso .bus non esiste sotto la directory di lavoro di OMSI (verificato prima della chiamata nativa, così OMSI non può sostituirlo con un fallback).Dettaglio runtimeUsare un'identità ottenuta da vehicles list//list:vehicles.
OL_E_MAKEVEHICLE_DELTA_MULTIPLEcome sopraMakeVehicle nativo ha modificato la collezione dei veicoli stradali di più di un oggetto.Dettaglio runtime (native_status, conteggi nel messaggio)Segnalare il problema; gli oggetti creati restano fino al termine della sessione.
OL_E_MAKEVEHICLE_DELTA_ZEROcome sopraLa collezione non è cambiata; OMSI ha rifiutato il veicolo senza segnalarlo.Dettaglio runtimeControllare il file .bus; provare un altro modello.
OL_E_MAKEVEHICLE_NATIVE_FAILEDcome sopraQualsiasi altro stato nativo diverso da zero.Dettaglio runtimeSegnalare il problema con i conteggi del messaggio.
OL_E_PLACE_RANDOM_BUS_FAILEDCurrentRuntimeControl.PlaceRandomBusLa chiamata profilata PlaceRandomBus ha restituito uno stato di errore.Dettaglio runtimeRiprovare quando il gameplay è stabile; segnalare il problema.
OL_E_RUNTIME_ARGUMENT_REQUIREDPublicCapabilityRegistry.ValidateRuntimeArguments; controlli lato plugin (time.set senza hour/minute/second; camera.set senza family/field_of_view; camera.lock senza una family interpretabile; operazioni su veicoli/curve)Un argomento obbligatorio manca o è vuoto.Risultato runtime (registro; CLI: uscita 2) o dettaglio runtime (plugin)Fornire l'argomento (controllo runtime).
OL_E_RUNTIME_ARTIFACT_MISSINGOmsiLaunchService.PlanSessionAsyncLa directory/il file di riferimento della chiusura del plugin o il bridge nativo indicati in OmsiLaunchRuntimePaths non possono essere caricati (può incapsulare OL_E_RELEASE_MANIFEST_INVALID).Diagnostica del pianoEseguire da un pacchetto integro.
OL_E_RUNTIME_BASELINE_UNAVAILABLERuntimeBatch (/runtime-write-batch, harness INTERNAL)La lettura di base time.read/camera.read è fallita, quindi il test di scrittura è stato saltato.Solo artefatto del batchNon destinato agli utenti.
OL_E_RUNTIME_BUS_IDENTITY_INVALIDCurrentRuntimeControl.ValidateBasicBusIdentitymodel è vuoto, più lungo di 240 caratteri, contiene NUL o .., non inizia con Vehicles\ oppure non termina con .bus.Dettaglio runtimePassare Vehicles\<dir>\<file>.bus.
OL_E_RUNTIME_CHANNEL_BUSYnessuno (mantenuto per compatibilità)Non viene più emesso. I build precedenti lo sollevavano quando una richiesta annullata restava nello slot; ora ogni percorso terminale di una richiesta reimposta lo slot, e una richiesta o risposta residua trovata all'inizio di una nuova richiesta viene eliminata.——
OL_E_RUNTIME_CHANNEL_CLOSEDOmsiLaunchService.LiveSession.RequestRuntimeAsyncLa mailbox è stata rilasciata perché la sessione sta terminando.Lanciato (InvalidOperationException)Nessuna azione; la sessione è terminata.
OL_E_RUNTIME_CHANNEL_STATE_INVALIDCurrentRuntimeCommandStore.RequestAsyncLo slot della mailbox conteneva un valore di stato diverso da inattivo, richiesto o con risposta (corruzione). Lo slot viene reimpostato e l'errore viene sollevato; la richiesta successiva funziona normalmente.Lanciato (InvalidDataException)Riprovare; segnalare il problema se persiste.
OL_E_RUNTIME_CONSTANTS_UNAVAILABLEOmsiRuntimeReadersIl puntatore al blocco delle costanti del veicolo è nullo.Dettaglio runtimeIl veicolo non ha costanti; non c'è nulla da fare.
OL_E_RUNTIME_CONSTANT_NOT_FOUNDOmsiRuntimeReadersname non è nella tabella delle costanti del veicolo.Dettaglio runtimeElencare prima le costanti.
OL_E_RUNTIME_CREATED_OBJECT_INVALIDOmsiRuntimeReaders.RegisterRoadVehicleHandleAsyncL'oggetto creato dallo spawn ha una VMT al di fuori dell'intervallo dell'immagine di OMSI.Dettaglio runtimeSegnalare il problema.
OL_E_RUNTIME_CREATED_OBJECT_NOT_IN_COLLECTIONcome sopraL'oggetto creato non è nella collezione dei veicoli stradali.Dettaglio runtimeSegnalare il problema.
OL_E_RUNTIME_CURVE_DEGENERATEOmsiRuntimeReaders.EvaluateRoadVehicleCurveAsyncDue punti consecutivi della curva hanno la stessa X.Dettaglio runtimeProblema di contenuto nella curva del veicolo.
OL_E_RUNTIME_CURVE_EMPTYcome sopraLa curva non ha punti.Dettaglio runtimeCome sopra.
OL_E_RUNTIME_CURVE_INVALIDcome sopraNessun segmento della curva contiene x.Dettaglio runtimeValutare all'interno del dominio della curva.
OL_E_RUNTIME_CURVE_NOT_FOUNDcome sopraname è sconosciuto oppure il suo puntatore a funzione è nullo.Dettaglio runtimeElencare prima le curve.
OL_E_RUNTIME_HOF_UNAVAILABLEOmsiRuntimeReaders.ReadRoadVehicleHofsAsyncIl puntatore alla definizione del veicolo è nullo.Dettaglio runtimeL'handle si riferisce a un veicolo privo di dati di definizione.
OL_E_RUNTIME_INSTALLATION_INCOMPLETECliProgram.RunAsync (modalità owner)plugins\OmsiLaunch.Plugin.opl o plugins\OmsiLaunch.Native.x86.dll manca accanto all'eseguibile.Envelope della CLI, uscita 7Reinstallare il pacchetto.
OL_E_RUNTIME_OBJECT_HANDLE_REQUIREDCurrentRuntimeControlhandle mancante o vuoto per road-vehicle.read, human.read, vehicle.variables.list, vehicle.string-variables.list, vehicle.constants.list, vehicle.curves.list (normalmente il registro li rifiuta prima con OL_E_RUNTIME_ARGUMENT_REQUIRED).Dettaglio runtimeFornire l'handle.
OL_E_RUNTIME_OBJECT_HANDLE_STALEOmsiRuntimeReadersL'handle è sconosciuto, l'oggetto ha lasciato la collezione, la generazione dell'indirizzo è avanzata, oppure l'impronta dell'oggetto (VMT + identità di definizione/modello) è cambiata perché l'indirizzo è stato riutilizzato. Punto cieco residuo: stessa classe e stesso modello ricreati allo stesso indirizzo tra due letture dell'elenco.Dettaglio runtimeEseguire di nuovo road-vehicles.list/humans.list e usare il nuovo handle.
OL_E_RUNTIME_OPERATION_FAILEDCurrentRuntimeControl.Execute; CurrentRuntimeCommandMailbox.TryDispatch; fallback di D3DRuntimeApiWrapper generico per gli errori lato plugin; Values["detail"] contiene il messaggio (spesso un codice più specifico) e Values["exception"] il tipo di eccezione. Anche un'eccezione che sfugge a un'operazione all'interno del dispatcher della mailbox riceve una risposta con questo codice (senza valori), invece di lasciare la richiesta senza risposta.Risultato runtimeLeggere detail.
OL_E_RUNTIME_OPERATION_UNAVAILABLECurrentRuntimeControl.ExecuteIl plugin non ha un'implementazione per un'operazione consentita dal registro (disallineamento di versione tra registro e plugin).Dettaglio runtimeReinstallare un pacchetto coerente.
OL_E_RUNTIME_OPERATION_UNKNOWNPublicCapabilityRegistry.ValidateRuntimeArgumentsL'operazione non è in PublicRuntimeOperationIds, incluse tutte le operazioni internal.*. Verificato prima della ricerca della sessione.Risultato runtime; risposta di controllo; CLI: uscita 2Usare un id di operazione pubblico.
OL_E_RUNTIME_PLAYER_VEHICLE_UNAVAILABLEOmsiCameraLockWritercamera.lock con preset mentre non esiste un veicolo del giocatore (le sessioni headless non ne hanno). Viene riportato anche come code dell'evento camera.lock.degraded quando la riapplicazione fallisce.Dettaglio runtime / evento runtimeBloccare senza preset, oppure usare una sessione con un veicolo del giocatore.
OL_E_RUNTIME_PROTOCOL_MISMATCHD3DRuntimeApiUn risultato D3D riuscito non aveva valori, oppure conteneva una stringa di stato del dispositivo sconosciuta.Lanciato (OmsiRuntimeException)Allineare le versioni di host e plugin.
OL_E_RUNTIME_REQUEST_ID_REUSEDCurrentRuntimeCommandStore.RequestAsyncLo slot contiene una risposta obsoleta con lo stesso id di richiesta della nuova richiesta. La risposta obsoleta viene eliminata prima che l'errore venga sollevato.Lanciato (InvalidOperationException)Usare id di richiesta strettamente crescenti.
OL_E_RUNTIME_REQUEST_TIMEOUTCurrentRuntimeCommandStore.RequestAsyncNessuna risposta entro timeout; lo slot viene reimpostato e una risposta tardiva viene scartata.Lanciato (TimeoutException); CLI: uscita 5Riprovare con un timeout più lungo; verificare che OMSI non sia bloccato (finestra di dialogo modale, caricamento).
OL_E_RUNTIME_RESPONSE_INVALIDCurrentRuntimeCommandStoreL'envelope della risposta è corrotto, ha una lunghezza non valida (negativa, zero o maggiore dello slot), un id di sessione estraneo o un id di richiesta diverso. Lo slot viene reimpostato prima che l'errore venga sollevato, quindi la richiesta successiva funziona normalmente.Lanciato (InvalidDataException)Riprovare; segnalare il problema se persiste.
OL_E_RUNTIME_RESPONSE_TOO_LARGECurrentRuntimeCommandMailbox.TryDispatchIl risultato serializzato supera la mailbox da 64 KiB. I risultati degli elenchi limitati (quelli con returned_count e truncated) vengono invece accorciati per rientrare nel limite (audit della documentazione BUG-05); in pratica il codice resta raggiungibile per timetable.logs.read, che non è limitato.Risultato runtimeUsare un'operazione più mirata (per esempio road-vehicles.read invece di road-vehicles.list su collezioni molto grandi).
OL_E_RUNTIME_SCRIPT_OBJECT_UNAVAILABLEOmsiRuntimeReadersIl puntatore alla definizione o allo stato dello script del veicolo è nullo.Dettaglio runtimeIl veicolo non ha oggetti script.
OL_E_RUNTIME_SESSION_MISMATCHOmsiLaunchService.ExecuteRuntimeAsync; CurrentRuntimeCommandStore; mailbox del pluginRuntimeCommand.SessionId differisce dall'id di sessione dell'handle (lanciato dall'host), oppure una richiesta ha raggiunto un plugin associato a un'altra sessione (restituito dal plugin come risultato tipizzato).Lanciato (InvalidOperationException) / risultato runtimeCostruire il comando con session.SessionId.
OL_E_RUNTIME_SETTING_NOT_PERSISTENTCurrentRuntimeControl.SetWeatherweather.set viene sempre rifiutato: OMSI sovrascrive i campi meteo profilati al suo successivo tick meteo, quindi una scrittura non può essere riportata come modifica semantica.Risultato runtimeNessuna azione; weather.set è UNAVAILABLE.
OL_E_RUNTIME_SETTING_UNAVAILABLEOmsiWeatherWriterNome di campo meteo sconosciuto. Attualmente irraggiungibile perché weather.set viene rifiutato prima.Dettaglio runtime (definito)Vedere il sorgente src/OmsiLaunch.Interop/OmsiWeatherWriter.cs.
OL_E_RUNTIME_STRING_VARIABLE_NOT_FOUNDOmsiRuntimeReadersname non è nella tabella delle variabili stringa.Dettaglio runtimeElencare prima le variabili stringa.
OL_E_RUNTIME_VALUE_INVALIDOmsiWeatherWriter.ParseBooleanUn booleano meteo non è true/false/1/0. Attualmente irraggiungibile (vedere sopra).Dettaglio runtime (definito)Vedere il sorgente.
OL_E_RUNTIME_VALUE_OUT_OF_RANGECurrentRuntimeControl, OmsiCameraWriter, OmsiCameraLockWriter, OmsiRuntimeReaders, OmsiWeatherWritertime.set: hour 0..23, minute 0..59, second 0..59.999; camera.set: family 0..3, field_of_view 10..170; camera.lock: preset non intero, family 0..3, preset 0..255; road-vehicles.place-random: ai_type 0..255, group/type/tour/line 0..65535 (type può essere -1), scheduled 0..1; vehicle.variable.set: value non finito; vehicle.curve.evaluate: x non finito.Dettaglio runtimeUsare un valore compreso nell'intervallo.
OL_E_RUNTIME_VARIABLE_NOT_FOUNDOmsiRuntimeReadersname non è nella tabella delle variabili numeriche.Dettaglio runtimeElencare prima le variabili.
OL_E_RUNTIME_VARIABLE_UNAVAILABLEOmsiRuntimeReadersLo slot della variabile o l'indirizzo del valore è nullo.Dettaglio runtimeLa variabile non è materializzata per questo veicolo.
OL_E_TIME_APPLY_FAILEDCurrentRuntimeControl.SetTimeGli scalari dell'orologio sono stati scritti, ma la chiamata nativa profilata SetTime ha restituito un errore.Dettaglio runtimeRiprovare; rileggere con time.read.

RuntimeD3D#

Tutti sollevati da CurrentRuntimeControl (mappatura ThrowD3D dello stato nativo; detail contiene l'operazione e l'HRESULT, native_status lo stato numerico). Superficie: risultato runtime con il codice in ErrorCode; D3DRuntimeApi lo rilancia come OmsiRuntimeException.

CodiceStato nativo / causaCosa fare
OL_E_D3D_DEVICE_LOST8: il dispositivo Direct3D è perso.Attendere d3d.restored; ricreare le texture (la generazione è cambiata).
OL_E_D3D_INVALID_ARGUMENT14: width, height, level, x, y, format o handle mancante o non valido (intervalli: width/height 1..4096, levels 0..16, level 0..15, x/y 0..4095).Correggere gli argomenti.
OL_E_D3D_INVALID_PIXEL_BUFFERpixels_base64 non è Base64 valido oppure supera 48 KiB.Inviare rettangoli più piccoli.
OL_E_D3D_INVALID_TEXTURE_FORMAT6, oppure un nome di format sconosciuto (validi: A8R8G8B8, X8R8G8B8, R5G6B5, X1R5G5B5, A1R5G5B5, A4R4G4B4, A8, L8, A8L8).Usare un formato elencato.
OL_E_D3D_NATIVE_CALL_FAILEDQualsiasi altro stato; l'HRESULT è in detail.Segnalare il problema indicando l'HRESULT.
OL_E_D3D_NOT_READY7: il dispositivo non è pronto (prima del primo frame o durante l'arresto).Riprovare dopo d3d.ready.
OL_E_D3D_RESET_IN_PROGRESS9: è in corso un reset del dispositivo.Riprovare dopo d3d.restored.
OL_E_D3D_RESOURCE_RELEASED13: l'handle della texture è già stato rilasciato.Non riutilizzare handle rilasciati.
OL_E_D3D_STALE_RESOURCE_HANDLE12: l'handle appartiene a una generazione precedente del dispositivo; oppure la stringa dell'handle non è d3dtex-<session>-<hex> / è zero.Ricreare la texture.

Sessione#

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_CAPABILITY_UNAVAILABLESessionPlanner; ApplyTelemetry su plugin.request.unsupportedPiano: richiesti LastMapState, EntrypointIdentity, modalità data/ora/anno, modalità meteo, campi del veicolo del giocatore o documenti di input (Requested capability unavailable: <name>). Telemetria: il plugin ha rifiutato l'handoff (non può accadere per un piano eseguibile).Diagnostica del piano; diagnostica della sessioneRimuovere la richiesta non supportata (limitazioni note).
OL_E_HEADLESS_ARM_FAILEDApplyTelemetry su headless.arm.failedIl plugin non è riuscito ad armare in OMSI l'hook monouso di avvio headless.Diagnostica della sessione (Failed)Verificare il build; segnalare il problema.
OL_E_NO_ACTIVE_SESSIONClient CLI (ReportForwarded, CliEventWatch)Nessun owner risponde sulla pipe di controllo dell'installazione (nessuna sessione, oppure l'owner è ancora in fase di avvio/validazione).Envelope della CLI, uscita 4Avviare una sessione, oppure attendere che sia Running.
OL_E_PLUGIN_NOT_LOADEDSuperviseAsyncStartupTimeoutSeconds è trascorso prima di plugin.started (OMSI non ha caricato plugins\OmsiLaunch.Plugin.opl, oppure è bloccato prima dell'inizializzazione dei plugin).Diagnostica della sessione (Failed)Controllare la chiusura del plugin, plugins\OmsiLaunch.Plugin.opl e il logfile.txt di OMSI.
OL_E_PLUGIN_PROTOCOL_MISMATCHApplyTelemetry su plugin.handoff.invalid o su JSON di telemetria non interpretabileIl plugin non è riuscito a leggere/verificare l'handoff di avvio (versione 3/4, SHA-256), oppure ha inviato telemetria non valida.Diagnostica della sessione (Failed)Allineare le versioni di host e plugin (reinstallare il pacchetto).
OL_E_SESSION_ALREADY_ACTIVECliProgram.RunAsyncUn owner risponde già a session.status per questa installazione.Envelope della CLI, uscita 7Usare i comandi client (session status, session stop, comandi runtime).
OL_E_SESSION_NOT_RUNNINGOmsiLaunchService.ExecuteRuntimeAsyncLo stato della sessione non è Running.Lanciato (InvalidOperationException)Eseguire prima WaitForAsync(session, SessionState.Running, ...).
OL_E_SESSION_PRESENTATION_INVALIDSessionPlannerNon è stato possibile costruire il piano splash/ITX; il messaggio contiene il codice di presentazione.Diagnostica del pianoVedere Presentazione.
OL_E_SESSION_START_FAILEDWindowsHost.ShowFailure (finestra di dialogo di OmsiLaunchW)Codice di fallback mostrato quando un piano di avvio non è eseguibile o la sessione non ha raggiunto il gameplay, e non esiste alcuna diagnostica OL_E_.Solo finestra di messaggioLeggere .omsilaunch\diagnostics.
OL_E_SITUATION_LOAD_FAILEDApplyTelemetry su world.situation.failedL'avvio nativo della situazione salvata ha restituito un errore (native_status nell'evento).Diagnostica della sessione (Failed)Controllare il file .osn e la sua mappa.
OL_E_STARTUP_TIMEOUTSuperviseAsyncIl plugin è stato avviato, ma Running non è stato raggiunto entro StartupTimeoutSeconds.Diagnostica della sessione (Failed)Aumentare /startup-timeout per le mappe grandi; esaminare RuntimeEvents per l'ultimo evento del mondo.
OL_E_START_SESSIONOmsiLaunchService.StartAsyncQualsiasi eccezione nel percorso di avvio; il messaggio è quello interno (che di solito inizia con il codice interno).Diagnostica della sessione (Failed)Intervenire in base al codice interno.
OL_E_WORLD_START_FAILEDApplyTelemetry su world.failedL'avvio nativo NEW_MAP ha restituito un errore (native_status nell'evento).Diagnostica della sessione (Failed)Controllare la mappa, l'indice del punto di ingresso e i log di OMSI.

SessionProfile#

Tutti sollevati da SessionProfileCompiler (src/OmsiLaunch.Core/SessionProfiles.cs) o da CliInput, lanciati come SessionProfileException (una IOException con Code), CLI: uscita 2. Vedere profili di sessione.

CodiceSignificato / causa tipicaCosa fare
OL_E_SESSION_PROFILE_ASSET_MISSINGLa directory assets della splash screen del preset o il file profile delle Internet Textures (texture da Internet) non esiste all'interno del pacchetto.Aggiungere l'asset.
OL_E_SESSION_PROFILE_INVALIDViolazione strutturale o di un limite: più di 256 KiB, non esattamente un mapping radice, ancore YAML, chiave sconosciuta, chiave obbligatoria mancante, valore non scalare dove è richiesto uno scalare, id diverso dal nome della directory, preset non compresi tra 1..5 o index duplicato, timeout non positivi, modalità meteo/splash/Internet Textures non supportata, data/ora non explicit, YAML non valido, errori di interpretazione di numeri/date.Correggere il YAML in base al messaggio.
OL_E_SESSION_PROFILE_MAP_MISMATCHcompatibility.maps non è vuoto e non contiene la mappa selezionata (NEW_MAP) o la mappa della situazione selezionata (SAVED_SITUATION).Scegliere un mondo compatibile.
OL_E_SESSION_PROFILE_NOT_FOUND<root>\.omsilaunch\session-profiles\<id>\profile.yaml non esiste.Verificare l'id.
OL_E_SESSION_PROFILE_OVERRIDE_CONFLICTUn argomento esplicito della CLI riguarda un campo gestito dal profilo/preset selezionato.Eliminare il flag o scegliere un altro preset.
OL_E_SESSION_PROFILE_PATH_ESCAPEL'id contiene \, /, : o ..; oppure il percorso di un asset è assoluto, esce dal pacchetto o attraversa una junction/un collegamento simbolico.Mantenere i percorsi all'interno del pacchetto.
OL_E_SESSION_PROFILE_PRESET_NOT_FOUND/predefined-profile-index mancante, al di fuori di 1..5, oppure non dichiarato dal profilo.Usare un indice di preset dichiarato.
OL_E_SESSION_PROFILE_SCHEMA_UNSUPPORTEDschema non è omsilaunch.session-profile/v1.Usare lo schema supportato.
OL_E_SESSION_PROFILE_SETTING_NOT_WRITABLELa chiave di un'impostazione del preset è nota ma non scrivibile.Rimuovere la chiave.
OL_E_SESSION_PROFILE_SETTING_UNKNOWNLa chiave di un'impostazione del preset non è nel catalogo.Usare una chiave del catalogo.

Transazione#

Vedere transazioni e recupero.

CodiceSollevato daSignificato / causa tipicaSuperficieCosa fare
OL_E_CLOSECHECK_REMOVE_FAILEDOmsiLaunchService.RemoveStaleClosecheckUn closecheck obsoleto esiste ancora dopo File.Delete.Diagnostica della sessione tramite OL_E_START_SESSIONRimuovere manualmente <root>\closecheck (permessi).
OL_E_RECOVERY_ABSENT_OWNERSHIP_MISMATCHFileConfigurationTransaction.RestoreAsyncUn percorso che non esisteva prima della sessione ora ha un contenuto diverso da quello applicato dalla sessione; non viene rimosso e il journal viene conservato.Lanciato (IOException); all'interno di OL_E_RESTORE_FAILED / OL_E_START_SESSION; CLI: uscita 8Esaminare il file; rimuoverlo o spostarlo, quindi eseguire /recover.
OL_E_RECOVERY_ABSENT_OWNERSHIP_UNVERIFIEDRestoreAsync (journal precedente alle impronte)Il journal non ha un'impronta del contenuto applicato per un percorso originariamente assente e non di eliminazione, quindi la proprietà non può essere dimostrata. All'avvio della sessione il recupero viene rinviato e ritentato con i byte pianificati di questa sessione; tramite RecoverPendingAsync viene lanciato.Lanciato (IOException); CLI: uscita 8Avviare una sessione con la stessa spec (che fornisce i byte), oppure esaminare e rimuovere il file, quindi eseguire /recover.
OL_E_RECOVERY_BACKUP_CORRUPTRestoreAsyncLo SHA-256 di un backup non corrisponde allo snapshot registrato nel journal; non viene scritto nulla.Lanciato; all'interno di OL_E_RESTORE_FAILED; CLI: uscita 8Ripristinare il file da un proprio backup; eliminare poi il journal solo quando si è certi.
OL_E_RECOVERY_JOURNAL_MISSINGRestoreAsyncGli snapshot esistono in memoria ma journal.json non c'è più (eliminato durante la sessione).Lanciato; all'interno di OL_E_RESTORE_FAILEDVerificare manualmente i file della sessione.
OL_E_RECOVERY_JOURNAL_REMOVE_FAILEDFileConfigurationTransaction.RemoveJournaljournal.json esiste ancora dopo l'eliminazione (il ripristino in sé è riuscito ed è stato verificato).Lanciato; all'interno di OL_E_RESTORE_FAILED; CLI: uscita 8Eliminare <root>\.omsilaunch\journal.json (permessi) oppure eseguire di nuovo /recover (idempotente).
OL_E_RESTORE_DEFERREDOmsiLaunchService (errore di avvio / supervisore)Non è stato possibile confermare l'uscita di OMSI, quindi i file non sono stati sostituiti mentre OMSI potrebbe ancora usarli; il journal viene conservato.Diagnostica della sessione (Failed)Dopo che Omsi.exe è terminato, eseguire /recover (oppure l'avvio successivo esegue il recupero automaticamente).
OL_E_RESTORE_FAILEDOmsiLaunchService (errore di avvio / supervisore)RestoreAsync ha lanciato un'eccezione; il messaggio contiene il codice interno; il journal viene conservato.Diagnostica della sessione (Failed); CLI: uscita 8 quando lanciato da /recoverIntervenire in base al codice interno, quindi eseguire /recover.

Avviso#

CodiceSollevato daSignificatoSuperficieCosa fare
OL_W_RESTORE_FOREIGN_FILE_RETAINEDFileConfigurationTransaction.RestoreAsyncUn percorso di eliminazione della sessione (destinazione ITX, Texture\standard.ipr, closecheck) non esisteva prima della sessione ed esiste ora, ma nessun processo OMSI è mai stato avviato con questo journal, quindi il file non può essere un sottoprodotto della sessione. Viene conservato e segnalato (messaggio = percorso relativo, Data["sha256"]); la transazione viene comunque completata.Diagnostica della sessione / RecoveryStatus.Diagnostics (lo stato non viene influenzato)Esaminare il file; rimuoverlo manualmente se non desiderato.

Codici di diagnostica che non sono errori#

CodiceEmesso daMessaggio / datiSignificato
process.startedOmsiLaunchService.LiveSession.Attachmessaggio = PID; Data["thread_id"], Data["creation_utc"] (ISO 8601)Omsi.exe è stato creato e la sua identità è stata registrata. Diagnostica della sessione.
closecheck.stale-removedOmsiLaunchService.RemoveStaleClosecheckmessaggio = SHA-256 del file rimossoUn closecheck esistente prima della sessione è stato rimosso definitivamente (SuppressStaleClosecheckWarning = true). Diagnostica della sessione.
restore.session-artifact-removedFileConfigurationTransaction.RestoreAsyncmessaggio = percorso relativo; Data["sha256"]Un percorso di eliminazione della sessione è stato ricreato da OMSI durante una sessione il cui processo era stato avviato; è stato rimosso per ripristinarne l'assenza originale. Diagnostica della sessione / RecoveryStatus.Diagnostics.
plugin.integrity.referenceOmsiLaunchService.PlanSessionAsyncmessaggio = manifest o selfIndica quale riferimento usa la validazione del plugin permanente. Diagnostica del piano.
session_profile.selectedSessionPlannermessaggio = id del profilo; Data["session_profile.id|name|version|author|preset_id|preset_index|preset_name|path"]Provenienza di una sessione compilata da un profilo di sessione. Diagnostica del piano.

I nomi degli eventi runtime (RuntimeEvent.Type, che non sono voci di diagnostica) sono elencati nel ciclo di vita della sessione.