NS services: Difference between revisions

No edit summary
No edit summary
Line 615: Line 615:
| 93 || [5.0.0+] GetMainApplicationProgramIndex
| 93 || [5.0.0+] GetMainApplicationProgramIndex
|-
|-
| 94 || [6.0.0+] LaunchApplication
| 94 || [6.0.0+] [[#LaunchApplication_2|LaunchApplication]]
|-
|-
| 95 || [6.0.0+] [[#GetApplicationLaunchInfo]]
| 95 || [6.0.0+] [[#GetApplicationLaunchInfo]]
Line 657: Line 657:
| 301 || PopApplicationShellEventInfo
| 301 || PopApplicationShellEventInfo
|-
|-
| 302 || LaunchLibraryApplet
| 302 || [[#LaunchLibraryApplet]]
|-
|-
| 303 || TerminateLibraryApplet
| 303 || TerminateLibraryApplet
|-
|-
| 304 || LaunchSystemApplet
| 304 || [[#LaunchSystemApplet]]
|-
|-
| 305 || TerminateSystemApplet
| 305 || TerminateSystemApplet
|-
|-
| 306 || LaunchOverlayApplet
| 306 || [[#LaunchOverlayApplet]]
|-
|-
| 307 || TerminateOverlayApplet
| 307 || TerminateOverlayApplet
Line 1,060: Line 1,060:


See [[#RequestApplicationUpdateInfo]] regarding nifm.
See [[#RequestApplicationUpdateInfo]] regarding nifm.
==== LaunchApplication ====
Takes an input u8 ProgramIndex, an input [[#ApplicationLaunchInfo]], returns an output u64.


==== GetApplicationLaunchInfo ====
==== GetApplicationLaunchInfo ====
Line 1,078: Line 1,081:
[[NCM_services#ncm|OpenContentMetaDatabase]] is used with StorageId = NandSystem, then IContentMetaDatabase GetLatestContentMetaKey is used with both of the above ProgramIds to verify that the cmd is successful.
[[NCM_services#ncm|OpenContentMetaDatabase]] is used with StorageId = NandSystem, then IContentMetaDatabase GetLatestContentMetaKey is used with both of the above ProgramIds to verify that the cmd is successful.


Then if the above succeeds, the above titles are launched with the above StorageId via [[Process_Manager_services|pmshell]] LaunchProgram, with a 0.5s sleep-thread afterwards on success.
Then if the above succeeds, the above titles are launched with the above StorageId via [[Process_Manager_services|pmshell]] LaunchProgram, with a 0.5s sleep-thread afterwards on success. [[Process_Manager_services#LaunchFlags|LaunchFlags]] value 0xB is used here.


==== DeleteUserSaveDataAll ====
==== DeleteUserSaveDataAll ====
Line 1,096: Line 1,099:
==== UnregisterNetworkServiceAccountWithUserSaveDataDeletion ====
==== UnregisterNetworkServiceAccountWithUserSaveDataDeletion ====
Takes an input [[Account_services#Uid|Uid]], no output.
Takes an input [[Account_services#Uid|Uid]], no output.
==== LaunchLibraryApplet ====
Takes an input u64 [[NCM_services#ProgramId|ProgramId]], returns an output u64.
The specified program is launched with StorageId=BuiltInSystem via [[Process_Manager_services|pmshell]] LaunchProgram. [[Process_Manager_services#LaunchFlags|LaunchFlags]] value 0x9 is used here. The output u64 from here is written to the output for this cmd, on success.
==== LaunchSystemApplet ====
No input, returns an output u64.
A state flag must be zero, otherwise an error is thrown. When a state field is value 1, a hard-coded ProgramId for MaintenanceMenu is used. Otherwise, the ProgramId is loaded from [[System_Settings|system-setting]] <code>ns.applet!system_applet_id</code>.
The SystemApplet is launched with StorageId=BuiltInSystem via [[Process_Manager_services|pmshell]] LaunchProgram. [[Process_Manager_services#LaunchFlags|LaunchFlags]] value 0x9 is used here. The output u64 from here is written to the output for this cmd, on success.
==== LaunchOverlayApplet ====
No input, returns an output u64.
A state flag must be zero, otherwise an error is thrown. The ProgramId is loaded from [[System_Settings|system-setting]] <code>ns.applet!overlay_applet_id</code>.
The OverlayApplet is launched with StorageId=BuiltInSystem via [[Process_Manager_services|pmshell]] LaunchProgram. [[Process_Manager_services#LaunchFlags|LaunchFlags]] value 0x9 is used here. The output u64 from here is written to the output for this cmd, on success.


==== RequestDownloadApplicationControlData ====
==== RequestDownloadApplicationControlData ====