Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Process grejer

Postades av 2002-05-15 19:59:17 - Anton Samuelsson, i forum api-windows, Tråden har 8 Kommentarer och lästs av 1157 personer

Håller på med en process viewer, men jag har kört fast på dessa punkter, och skulle bli überglücklig för lite hjälp.

Fråga 1: Hur får man reda på filnamnet på en process som körs när man har antingen en window handle till ett av dess fönster eller processens PID (Process ID)? Jag har testat

hInst = GetWindowLong(hWnd, GWL_HINSTANCE);
GetModuleFileName(hInst, ProcessensFilNamn, 100);

men det ger mig antingen C:\WINDOWS\SYSTEM\SHELL32.DLL, C:\WINDOWS\SYSTEM\COMDLG32.DLL eller namnet/sökvägen till mitt eget program, vilket fönster hWnd än motsvarar.


Fråga 2:
Finns det inget smidigare sätt att hitta alla processer än EnumWindows? Med EnumWindows måste man ju sortera bort en massa fönster som tillhör samma process.

/Valderman


Svara

Sv: Process grejer

Postades av 2002-05-15 22:07:20 - Johan Djupmarker

En fundering bara, det finns väl processer utan fönster, dom får du ju inte upp, eller? Om jag inte minns fel så finns källkoden till "PVIEW" med till Visual Studio, du kan ju kolla där i sådana fall... Jag ska ta och leta lite och se om jag hittar det, kan ju vara något som jag har dröt bara...;)

/Johan


Svara

Sv: Process grejer

Postades av 2002-05-16 15:55:10 - Anton Samuelsson

Det att jag inte hittar dom med fönster är en nackdel med FindWindow, och på vilken visual studio skiva ligger källkoden? Jag har installerat allt på första skivan, och jag har inte hittat den källkoden.


Svara

Sv: Process grejer

Postades av 2002-05-16 16:30:04 - Johan Djupmarker

Källkoden finns på första MSDN-skivan, skrivet i VC++ alltså, men du borde ju kunna ta principen därifrån...

/Johan


Svara

Sv: Process grejer

Postades av 2002-05-16 19:32:12 - Anton Samuelsson

Jag var rädd för det... Jag har ingen av MSDN skivorna, bara den med Visual Studio och det. Jag har kollat MSDN på microsofts sida, men dom har tagit bort den källkoden. =(


Svara

Sv: Process grejer

Postades av 2002-05-16 20:31:45 - Anton Samuelsson

Nu har jag hittat ett bättre sätt att lista samtliga processer:
RegQueryValueEx(HKEY_PERFORMANCE_DATA, "Process", 0, lpdwType, lpData, lpdwDatasize)

Problemet är att den ger ifrån sig ERROR_BADKEY, trots att jag i en Win32 Knowledge Base läst:

"To enumerate all of the processes on the system, you can query the
Registry using RegQueryValueEx() with key HKEY_PERFORMANCE_DATA,
and the Registry database index associated with the database string
"Process"."

Jag har nu två NYA frågor, angående RegQueryValueEx:
1) Varför får jag ERROR_BADKEY?
2) Kan man få fram en process namn mha RegQueryValueEx?


Svara

Sv: Process grejer

Postades av 2002-05-17 00:11:48 - Sven Åke Persson

Hej
Tror att det är detta du söker.Din fråga verka gälla hkey
>Kan man få fram en process namn mha RegQueryValueEx?
Ja här hkey

Dim rc As Long ' Return Code
Dim hkey As Long ' Handle To An Open Registry Key
Dim KeyVal As String 'Retur värde RegistredOwner
Dim KeyValSize As Long 'Size Of Registry Key Variable

' Öpnar Win 95/98 versionen, du måste öppna för att få hkey
rc = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _
"SOFTWARE\Microsoft\Windows\CurrentVersion", _
0, &H1, hkey)
If rc <> 0 Then GoTo GetKeyError
KeyVal = String$(1024, 0) ' Allocate Variable Space
KeyValSize = 1024 ' Mark Variable Size
'------------------------------------------------------------
' Retrieve Registry Key Value...
'------------------------------------------------------------
' Get/Create Key Value
rc = RegQueryValueEx(hkey, "RegisteredOwner", 0&, _
0&, KeyVal, KeyValSize)

Viktigt om du vill köra ett nytt RegQuerryVal........
(här CurrentVersion) så måste du köra ett nytt.
Dvs nydatera dessa.
KeyVal = String$(1024, 0) ' Allocate Variable Space
KeyValSize = 1024 ' Mark Variable Size
osv nytt QueryValue.......

och viktigt du måste göra Close
' Close Registry Key
rc = RegCloseKey(hkey)
som du ser allt cirkulerar kring hkey

mvh
Sven


Svara

Sv: Process grejer

Postades av 2002-05-17 01:10:20 - Mattias Sjögren

Lösningen till båda frågorna borde du hitta här:

HOWTO: List Running Processes
http://support.microsoft.com/default.aspx?scid=kb;;Q187913


Funktionen GetWindowModuleFileName som finns i vissa versioner av Windows kan även komma till användning.


MS


Svara

Sv: Process grejer

Postades av 2002-05-17 08:19:21 - Anton Samuelsson

Tack! Ska pröva det jag hittade på den adressen så fort jag kommer hem (skriver från skolan).

BTW, Sven, i mitt Win32 API referens dokument står att man inte kan öppna nycklar i HKEY_PERFORMANCE_DATA, utan att de är öppna hela tiden.


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 763
27 959
271 761
509
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies