2009-01-06 18 views
0

J'ai besoin de connaître l'utilisation du processeur d'une DLL de service. J'ai regardé dans des échantillons existants et nous pouvons trouver l'utilisation de processeur pour des processus.Utilisation du processeur de la DLL de service?

Je pense que DLL sera chargé par services.exe. Il est donc possible de trouver l'utilisation du processeur par DLL.

Je travaille en C++ sur la plate-forme Windows.

+0

Le service est-il hébergé dans svchost? – arul

+0

oui hébergé dans svchost – anand

Répondre

3

Faites une copie de svchost.exe et appeler dbgsrvc.exe; Ensuite, allez dans l'entrée de service dans le registre (HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Eventlog par exemple), et modifiez ImagePath pour utiliser dbgsrvc au lieu de services. De cette façon, vous avez isolé votre service dans son propre processus, ce qui vous permet d'obtenir des compteurs de performances.

1

Les seuls compteurs de performance disponibles dans Windows sont au niveau du processus. Que voulez-vous dire par service DLL? Le seul service.DLL que je connais est un virus de Trojan. Mais parlez-vous des DLL de service génériques ou d'un fichier spécifique?

+0

Je prends à propos des dll de service génériques qui sont hébergés dans svchost.exe ou servicee.exe – anand

1

Essayez ceci:

  1. Utilisez Perfmon pour connecter tous les compteurs pour l'objet de processus.
  2. Avant ou après votre test, exécutez tasklist /svc à partir d'une console de commande. Regardez à travers la sortie pour le svchost.exe qui héberge votre service. Notez le PID de ce processus.
  3. Après le test, utilisez Perfmon pour charger votre fichier journal, l'ajouter les mesures de processus pour le processus à l'étape 2.
-1

Vous devez surveiller le processus hébergeant la DLL.