SyncToy not running - throws System.InvalidOperationException

G

Guest

I initially loaded the beta version of SyncToy a while back, and it wouldn't
run.

I have since revisited, and installed the lattest version, and I have the
same problem. The debugger gives the following stack trace
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(System.Diagnostics.PerformanceCounterLib library = {System.Diagnostics.PerformanceCounterLib}) + 0x1f0 bytes
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(string
machineName = ".", bool isRemoteMachine = false) + 0xce bytes
system.dll!System.Diagnostics.ProcessManager.GetProcessInfos(string
machineName = ".") + 0x2f bytes

system.dll!System.Diagnostics.Process.EnsureState(System.Diagnostics.Process.State state = HaveProcessInfo) + 0x234 bytes
system.dll!System.Diagnostics.Process.get_ProcessName() + 0x18 bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.OtherInstanceRunning() + 0x3d bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.Main(string[] args = {Length=0}) +
0xdd bytes


I have read the ealier postings and have checked the suggested registry
entry. I dont have it set. ie: it defaults to 0

These are keys I have set:

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance]
"Close"="CloseSysProcessObject"
"Collect"="CollectSysProcessObjectData"
"Collect Timeout"=dword:00001f40
"Library"="perfproc.dll"
"Object List"="230 232 786 740 816 1408 1500 1548 1760"
"Open"="OpenSysProcessObject"
"Open Timeout"=dword:00002710
"WbemAdapFileSignature"=hex:26,04,41,1d,b3,62,f3,c7,d4,6b,ab,31,36,2f,0b,55
"WbemAdapFileTime"=hex:00,58,34,8e,da,e7,a8,01
"WbemAdapFileSize"=dword:00008800
"WbemAdapStatus"=dword:00000000

What I have also noticed is that I am also unable to get any stats from
perfmon.
This is probaly the problem. But I dont seem to be able to figure out why
perfmon is not collecting any stats

Cheers
Chris Martin
 
G

Guest

Stuffa,

Enabling that perf counter for the PerfProc.Dll addresses this issue and
enables SyncToy to run.

We will take a look at alternative means of determining whether SyncToy is
already running for possible inclusion in a future release.

For those interested, the registry entry for PerfProc is:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance

As you might expect, the Disable Performance Counteres REG_DWORD = 0 for not
disabled and = 1 for disabled.

I hope this helps.

george

stuffa said:
I initially loaded the beta version of SyncToy a while back, and it wouldn't
run.

I have since revisited, and installed the lattest version, and I have the
same problem. The debugger gives the following stack trace
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(System.Diagnostics.PerformanceCounterLib library = {System.Diagnostics.PerformanceCounterLib}) + 0x1f0 bytes
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(string
machineName = ".", bool isRemoteMachine = false) + 0xce bytes
system.dll!System.Diagnostics.ProcessManager.GetProcessInfos(string
machineName = ".") + 0x2f bytes

system.dll!System.Diagnostics.Process.EnsureState(System.Diagnostics.Process.State state = HaveProcessInfo) + 0x234 bytes
system.dll!System.Diagnostics.Process.get_ProcessName() + 0x18 bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.OtherInstanceRunning() + 0x3d bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.Main(string[] args = {Length=0}) +
0xdd bytes


I have read the ealier postings and have checked the suggested registry
entry. I dont have it set. ie: it defaults to 0

These are keys I have set:

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance]
"Close"="CloseSysProcessObject"
"Collect"="CollectSysProcessObjectData"
"Collect Timeout"=dword:00001f40
"Library"="perfproc.dll"
"Object List"="230 232 786 740 816 1408 1500 1548 1760"
"Open"="OpenSysProcessObject"
"Open Timeout"=dword:00002710
"WbemAdapFileSignature"=hex:26,04,41,1d,b3,62,f3,c7,d4,6b,ab,31,36,2f,0b,55
"WbemAdapFileTime"=hex:00,58,34,8e,da,e7,a8,01
"WbemAdapFileSize"=dword:00008800
"WbemAdapStatus"=dword:00000000

What I have also noticed is that I am also unable to get any stats from
perfmon.
This is probaly the problem. But I dont seem to be able to figure out why
perfmon is not collecting any stats

Cheers
Chris Martin
 
G

Guest

George.. Thanks for the reply

However I have tried with the key & without
I have tried setting to 0 and 1 and I get the same result
I have also tried with the "correct" spelling for "counters"
and still the problem persists.

Here is my current performace registry keys

as you can see I have both
"Disable Performance Counters" and
"Disable Performance Counteres"

I have rebooted to make sure that they are in effect.

What I have noticed though is that "perfmon" doesnt collect any statistics
and I suspect that this may be the problem
However I have nothing the the event log that would indicate a problem

Cheers
Chris Martin



[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance]
"Close"="CloseSysProcessObject"
"Collect"="CollectSysProcessObjectData"
"Collect Timeout"=dword:00001f40
"Library"="perfproc.dll"
"Object List"="230 232 786 740 816 1408 1500 1548 1760"
"Open"="OpenSysProcessObject"
"Open Timeout"=dword:00002710
"WbemAdapFileSignature"=hex:26,04,41,1d,b3,62,f3,c7,d4,6b,ab,31,36,2f,0b,55
"WbemAdapFileTime"=hex:00,58,34,8e,da,e7,a8,01
"WbemAdapFileSize"=dword:00008800
"WbemAdapStatus"=dword:00000000
"Disable Performance Counteres"=dword:00000000
"Disable Performance Counters"=dword:00000000

George Goley - Microsoft said:
Stuffa,

Enabling that perf counter for the PerfProc.Dll addresses this issue and
enables SyncToy to run.

We will take a look at alternative means of determining whether SyncToy is
already running for possible inclusion in a future release.

For those interested, the registry entry for PerfProc is:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance

As you might expect, the Disable Performance Counteres REG_DWORD = 0 for not
disabled and = 1 for disabled.

I hope this helps.

george

stuffa said:
I initially loaded the beta version of SyncToy a while back, and it wouldn't
run.

I have since revisited, and installed the lattest version, and I have the
same problem. The debugger gives the following stack trace
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(System.Diagnostics.PerformanceCounterLib library = {System.Diagnostics.PerformanceCounterLib}) + 0x1f0 bytes
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(string
machineName = ".", bool isRemoteMachine = false) + 0xce bytes
system.dll!System.Diagnostics.ProcessManager.GetProcessInfos(string
machineName = ".") + 0x2f bytes

system.dll!System.Diagnostics.Process.EnsureState(System.Diagnostics.Process.State state = HaveProcessInfo) + 0x234 bytes
system.dll!System.Diagnostics.Process.get_ProcessName() + 0x18 bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.OtherInstanceRunning() + 0x3d bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.Main(string[] args = {Length=0}) +
0xdd bytes


I have read the ealier postings and have checked the suggested registry
entry. I dont have it set. ie: it defaults to 0

These are keys I have set:

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance]
"Close"="CloseSysProcessObject"
"Collect"="CollectSysProcessObjectData"
"Collect Timeout"=dword:00001f40
"Library"="perfproc.dll"
"Object List"="230 232 786 740 816 1408 1500 1548 1760"
"Open"="OpenSysProcessObject"
"Open Timeout"=dword:00002710
"WbemAdapFileSignature"=hex:26,04,41,1d,b3,62,f3,c7,d4,6b,ab,31,36,2f,0b,55
"WbemAdapFileTime"=hex:00,58,34,8e,da,e7,a8,01
"WbemAdapFileSize"=dword:00008800
"WbemAdapStatus"=dword:00000000

What I have also noticed is that I am also unable to get any stats from
perfmon.
This is probaly the problem. But I dont seem to be able to figure out why
perfmon is not collecting any stats

Cheers
Chris Martin
 
G

Guest

George...

I have been looking a bit further
looks like I have corrupted performance counters
perfmon has no objects. they appear as a list of numbers

cheers


George Goley - Microsoft said:
Stuffa,

Enabling that perf counter for the PerfProc.Dll addresses this issue and
enables SyncToy to run.

We will take a look at alternative means of determining whether SyncToy is
already running for possible inclusion in a future release.

For those interested, the registry entry for PerfProc is:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance

As you might expect, the Disable Performance Counteres REG_DWORD = 0 for not
disabled and = 1 for disabled.

I hope this helps.

george

stuffa said:
I initially loaded the beta version of SyncToy a while back, and it wouldn't
run.

I have since revisited, and installed the lattest version, and I have the
same problem. The debugger gives the following stack trace
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(System.Diagnostics.PerformanceCounterLib library = {System.Diagnostics.PerformanceCounterLib}) + 0x1f0 bytes
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(string
machineName = ".", bool isRemoteMachine = false) + 0xce bytes
system.dll!System.Diagnostics.ProcessManager.GetProcessInfos(string
machineName = ".") + 0x2f bytes

system.dll!System.Diagnostics.Process.EnsureState(System.Diagnostics.Process.State state = HaveProcessInfo) + 0x234 bytes
system.dll!System.Diagnostics.Process.get_ProcessName() + 0x18 bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.OtherInstanceRunning() + 0x3d bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.Main(string[] args = {Length=0}) +
0xdd bytes


I have read the ealier postings and have checked the suggested registry
entry. I dont have it set. ie: it defaults to 0

These are keys I have set:

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance]
"Close"="CloseSysProcessObject"
"Collect"="CollectSysProcessObjectData"
"Collect Timeout"=dword:00001f40
"Library"="perfproc.dll"
"Object List"="230 232 786 740 816 1408 1500 1548 1760"
"Open"="OpenSysProcessObject"
"Open Timeout"=dword:00002710
"WbemAdapFileSignature"=hex:26,04,41,1d,b3,62,f3,c7,d4,6b,ab,31,36,2f,0b,55
"WbemAdapFileTime"=hex:00,58,34,8e,da,e7,a8,01
"WbemAdapFileSize"=dword:00008800
"WbemAdapStatus"=dword:00000000

What I have also noticed is that I am also unable to get any stats from
perfmon.
This is probaly the problem. But I dont seem to be able to figure out why
perfmon is not collecting any stats

Cheers
Chris Martin
 
G

Guest

George ...

A bit more information

I have managed to get my perfmon counters working
I found in my system32 directory that the origianl files
perfc009.dat had been renamed to perfd.009.dat and another version of
perfc009.dat had been installed.
The same was true for perfh009.dat, renamed to perfi009.dat

I have copied the originla versions back, and permon counters & synctoy now
work

Dont suppose you or any one else knows what would have renamed these files

George Goley - Microsoft said:
Stuffa,

Enabling that perf counter for the PerfProc.Dll addresses this issue and
enables SyncToy to run.

We will take a look at alternative means of determining whether SyncToy is
already running for possible inclusion in a future release.

For those interested, the registry entry for PerfProc is:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance

As you might expect, the Disable Performance Counteres REG_DWORD = 0 for not
disabled and = 1 for disabled.

I hope this helps.

george

stuffa said:
I initially loaded the beta version of SyncToy a while back, and it wouldn't
run.

I have since revisited, and installed the lattest version, and I have the
same problem. The debugger gives the following stack trace
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(System.Diagnostics.PerformanceCounterLib library = {System.Diagnostics.PerformanceCounterLib}) + 0x1f0 bytes
system.dll!System.Diagnostics.NtProcessManager.GetProcessInfos(string
machineName = ".", bool isRemoteMachine = false) + 0xce bytes
system.dll!System.Diagnostics.ProcessManager.GetProcessInfos(string
machineName = ".") + 0x2f bytes

system.dll!System.Diagnostics.Process.EnsureState(System.Diagnostics.Process.State state = HaveProcessInfo) + 0x234 bytes
system.dll!System.Diagnostics.Process.get_ProcessName() + 0x18 bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.OtherInstanceRunning() + 0x3d bytes
SyncToy.exe!SyncToyUI.SyncToyUIForm.Main(string[] args = {Length=0}) +
0xdd bytes


I have read the ealier postings and have checked the suggested registry
entry. I dont have it set. ie: it defaults to 0

These are keys I have set:

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\PerfProc\Performance]
"Close"="CloseSysProcessObject"
"Collect"="CollectSysProcessObjectData"
"Collect Timeout"=dword:00001f40
"Library"="perfproc.dll"
"Object List"="230 232 786 740 816 1408 1500 1548 1760"
"Open"="OpenSysProcessObject"
"Open Timeout"=dword:00002710
"WbemAdapFileSignature"=hex:26,04,41,1d,b3,62,f3,c7,d4,6b,ab,31,36,2f,0b,55
"WbemAdapFileTime"=hex:00,58,34,8e,da,e7,a8,01
"WbemAdapFileSize"=dword:00008800
"WbemAdapStatus"=dword:00000000

What I have also noticed is that I am also unable to get any stats from
perfmon.
This is probaly the problem. But I dont seem to be able to figure out why
perfmon is not collecting any stats

Cheers
Chris Martin
 
Top