C# programm ausführen während ich auf einem anderen programm bin?

2 Antworten

Dann hast Du irgendetwas falsch gemacht, WinForms läuft immer, auch wenn Du gerade in einem anderen Programm aktiv bist. Zumindest wird nichts angehalten, aber wenn Du nichts klicks, passiert natürlich auch nichts.
Eventuell kann man im Windows Prozesse ohne Fokus pausieren, davon weiß ich aber nichts und das ist dann eine Einstellung im Windows.

Wenn Du willst, dass dein Programm immer vorne angezeigt wird, dann such nach "TopMost".

Wenn Du z.B. Mausbewegungen verarbeiten möchtest, geht das nicht mit WinForms, dafür brauchst Du die WinApi. Such nach "Hook", damit kannst Du sehr viele Dinge im Windows überwachen, musst aber beachten, dass Du damit auch andere Programme oder die Performance vom ganzen Windows stören kannst - das ist aber nie dauerhaft.
Außerdem ist das ganz sicher nicht für einen blutigen Anfänger geeignet. Wenn Du es doch versuchen willst, ist "p/invoke" das Stichwort und "pinvoke.net" eine große Hilfe.

Woher ich das weiß:Berufserfahrung – C#.NET Senior Softwareentwickler

Was heißt "anhält"? Wenn es nichts macht, dann ist es ohnehin im Leerlauf.

Wenn du eine Form hast, könntest du das Deactivate-Ereignis behandeln.

Woher ich das weiß:Studium / Ausbildung – Datenverarbeitungs-Kfm, Hobby- und Profi-Programmierer