Guest PrasannaP Posted March 17, 2008 Posted March 17, 2008 When loading disk performance counters in Windows Server 2008 a window may be created by a separate thread launched from the call to PdhAddCounterW. Under normal circumstances this will be fine, however our service runs under the Network Service account. This account has no permissions to create a window. The result of this is that the calling process will trap. This notification window is not always created, and we do not the exact reason why it is being launched. Here is a stack trace of the calls that attempt to add the counter: 0acdc034 76cb5aae 00000000 e2edff4e 0acdc4e4 perfdisk!OpenDiskObject+0xbd 0acdc310 76cb5897 00390668 e2edf83e 0000007a advapi32!OpenExtObjectLibrary+0x6a2 0acdc460 76cb9471 0acdc4ac e2edf41a 00000000 advapi32!QueryExtensibleData+0x577 0acdc844 76cb9229 80000004 0acdc964 00000000 advapi32!PerfRegQueryValue+0x5d8 0acdc934 76caf846 80000004 0acdc964 0acdc97c advapi32!LocalBaseRegQueryValue+0x313 0acdc998 71c67ffd 00000000 0acdca4c 00020000 advapi32!RegQueryValueExW+0xa2 0acdca14 71c6ba10 80000004 0b130a78 0acdca4c pdh!GetSystemPerfData+0x92 0acdcc58 71c66ccc 0b130a70 0b153eac 0acdcc80 pdh!GetObjectId+0xdb 0acdccbc 71c6c574 0b153d78 71c618d0 fffffffe pdh!InitCounter+0x1f9 0acdccd8 71c6d361 0b1307c8 0b15bf80 00000000 pdh!PdhiAddCounter+0xab 0acdcd34 66115610 0b1307c8 0c8407f8 00000000 pdh!PdhAddCounterW+0xf7 0acdfdc0 66115cf8 0b1307c8 00001394 6611e2a0 LMS20Rules!_CreatePdhQueryHelper+0x420 Here is where the trap occurs. The PerfdiskPnpNotification call is the one who is attempting to create the window. 0d3bff88 75d74911 00000000 0d3bffd4 7702e4c6 perfdisk!PerfdiskPnpNotification+0x5d 0d3bff94 7702e4c6 00000000 7ad941a2 00000000 kernel32!BaseThreadInitThunk+0xe 0d3bffd4 7702e499 74211862 00000000 ffffffff ntdll!__RtlUserThreadStart+0x23 0d3bffec 00000000 74211862 00000000 00000000 ntdll!_RtlUserThreadStart+0x1b Can someone in the Windows Server 2008 team please respond? This does not happen on Windows Server 2003.
Recommended Posts