Site icon EfmSoft

What does Windows error code 1152 (ERROR_SINGLE_INSTANCE_APP) mean?

 
Previous Next
ERROR_APP_WRONG_OS ERROR_RMODE_APP

ERROR_SINGLE_INSTANCE_APP

Cannot start more than one instance of the specified program.

ERROR_SINGLE_INSTANCE_APP has decimal value 1152 (0x480). It indicates that the selected program is limited to one running instance and another instance already satisfies that ownership condition. This historical Win32 result should be interpreted using the application’s actual single-instance mechanism, session model, and activation behavior.

Where it can be encountered

Modern applications often implement single-instance ownership with a named mutex, lock file, window, pipe, or app-instance framework. Those mechanisms can report other errors such as ERROR_ALREADY_EXISTS; therefore, confirm that 1152 is the original code and not a support label applied by a wrapper.

Evidence to collect

Path identity matters. Two different product versions can share a single-instance object accidentally and block one another even though their executable filenames are in separate directories.

Normal handling

If the existing instance is healthy, activate it or forward the new command line through the application’s documented IPC channel. The second launcher should then exit successfully or return a clear “already running” status rather than repeatedly spawning processes.

If the owner is hung, capture a dump before terminating it. Deleting a lock file or object without checking the live process can allow two instances to modify the same database or configuration concurrently.

Design recommendations

A named mutex alone shows that an object exists; it does not prove the existing application is ready to receive commands. Pair ownership with a readiness signal and a bounded activation timeout.

Administrator actions

Verify whether another user session owns the process before killing it. On servers, a global single-instance design may be intentional. If no process exists, inspect stale lock files, abandoned IPC endpoints, startup crashes, and permissions that prevent the new instance from taking ownership.

Do not add the application to an automatic restart loop that treats 1152 as a crash. Such a loop can continuously start and exit a redundant second process while the real instance remains healthy.

Related results

ERROR_ALREADY_EXISTS is commonly returned after creating a named mutex that already exists. ERROR_ACCESS_DENIED can indicate that the ownership object exists but cannot be opened. Error 1152 is the application-level statement that a second program instance must not start.

Example

A scheduled task launches a GUI tool while the same user already has it running. The second process returns 1152, but the scheduler marks the task failed and retries every minute. Forwarding the task arguments to the existing instance and treating “already active” as an expected state prevents the retry storm.

References


Looking for a different code? Search another status or error code.

Exit mobile version