Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Devilkevin aka Kerstin
Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 18.11.2006, 22:01 Titel: Prozess Prioritäten verwalten |
|
|
Hallo wie kann ich unter Windows die Prozess Prioritäten verwalten bzw. die Priorität des eigenen Prozzes auf "Hoch" stellen (eventuell über WinAPI?)
Danke sag ich schonmal jetzt |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 18.11.2006, 22:14 Titel: |
|
|
verwalten... auf anhieb fällt mir dazu nur der task-manager ein... rechtklick auf einen prozess.. aber das kennst du wohl schon...? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Devilkevin aka Kerstin
Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 18.11.2006, 22:47 Titel: |
|
|
Jojo hat Folgendes geschrieben: | verwalten... auf anhieb fällt mir dazu nur der task-manager ein... rechtklick auf einen prozess.. aber das kennst du wohl schon...? |
Ja
Es geht mir darum das ich will das mein Programm sich selbst eine höhere Priorität zuweist. |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 18.11.2006, 23:00 Titel: |
|
|
Hi.
Code: |
Declare Function SetPriorityClass Lib "kernel32.dll" alias "SetPriorityClass" (byval hProcess As Long, byval dwPriorityClass As Long) As Long
|
Ein möglicher Wert für dwPriorityClass ist imho THREAD_PRIORITY_TIME_CRITICAL -> Zeitkritischer Prozess. Hm, aber da das 'ne Konstante ist, müsste die evtl. irgendwo in 'ner Include definiert sein.
Allerdings weiß ich jetzt nicht, wie man das Prozesshandle rausbekommt.
Evtl. kann da einer der WinAPI-Junkies helfen? _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
ytwinky
Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 19.11.2006, 00:01 Titel: |
|
|
Hi,
rein informationshalber ist erstmal ActiveVB zu empfehlen, denn dort sind die nötigen Grundlagen erklärt..
..wie das Ganze in FB umzusetzen ist, habe ich noch nicht probiert, weil ich noch nie vor dem Problem stand, NotePad eine höhere Priorität als Nero zu verpassen
Außerdem gibts ja von dreael TaskKill und dort muß er sich ja auch irgendwie mit der Ermittlung von Prozeß-Handles befaßt haben
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
|
Dominik
Anmeldungsdatum: 22.12.2004 Beiträge: 172
|
Verfasst am: 22.11.2006, 18:35 Titel: |
|
|
Code ist nicht getestet, aber
so sollte es gehen:
Code: | Function SetWindowProcessPriority(hWnd As HWND, Priority As DWORD)
Dim hProcess As HANDLE
Dim ProcessId As DWORD
GetWindowThreadProcessId(hWnd, @ProcessId)
hProcess = OpenProcess(0, FALSE, ProcessId)
SetPriorityClass(hProcess, Priority)
CloseHandle(hProcess)
End Function |
|
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 22.11.2006, 19:26 Titel: |
|
|
Ich denke einmal, von den Berechtigungen her dürfte es wie bei den anderen Betriebssystemen sein: Priorität erniedrigen kann jeder, dagegen erhöhen nur Administratoren und evtl. auch Hauptbenutzer. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1874 Wohnort: D59192
|
Verfasst am: 23.11.2006, 14:20 Titel: |
|
|
Hi,
in zeitkritischen Anwendungen habe ich
Code: | #include once "windows.bi"
...
SetPriorityClass( GetCurrentProcess(), HIGH_PRIORITY_CLASS )
...
SetPriorityClass( GetCurrentProcess(), NORMAL_PRIORITY_CLASS )
... |
benutzt. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Devilkevin aka Kerstin
Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 23.11.2006, 16:07 Titel: |
|
|
Danke allen, hat alles gut geklappt |
|
Nach oben |
|
|
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 01.12.2006, 09:07 Titel: |
|
|
Klappt das unter Linux auch (natürlich auf nem Anderen Wege als WinAPI, die steht ja ohne Wine nicht zur Verfügung, und selbst wenn... naja)
Oder verteilt Linux grundsätzlich auf alle Programme Rechenzeit, die sich als Laufend deklariert haben, nur das aktuell offene Programm läuft ein klein wenig schneller?
Sorry für diese vlt. blöde frage, sicher könnte ich das auch alleine im Quelltext nachsehen, allerdings bin ich vielleicht auch einfach nur zu dumm dazu... |
|
Nach oben |
|
|
helium
Anmeldungsdatum: 10.09.2004 Beiträge: 397 Wohnort: Leverkusen
|
Verfasst am: 01.12.2006, 13:56 Titel: |
|
|
PMedia hat Folgendes geschrieben: | Oder verteilt Linux grundsätzlich auf alle Programme Rechenzeit, die sich als Laufend deklariert haben, nur das aktuell offene Programm läuft ein klein wenig schneller? |
Nein das Prozess-Scheduling unter Linux ist nicht komplett verblödet. Glaubst du das ernsthaft?
Gib z.B. mal 'man nice' ein.
Welches Programm ist das aktuell offene? _________________ Bevor Sie aufhören sich körperlich zu betätigen sollten Sie ihren Doktor befragen. Körperliche Inaktivität ist abnormal und gefährlich für Ihre Gesundheit. |
|
Nach oben |
|
|
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 01.12.2006, 14:41 Titel: |
|
|
Hätt ja sein können... wie gesagt, Linux bin ich noch relativ Noob. Aber ich entwickel mich ja noch... hab ja noch ca. 70 Jahre bis zu meinem momentan kalkulierten Tot, eine Menge Zeit... wenn nix dazwischenkommt... |
|
Nach oben |
|
|
|