[KSPROXY]
[reactos.git] / reactos / dll / directx / ksproxy / proxy.cpp
index c2685ad..bd34ec8 100644 (file)
@@ -347,24 +347,26 @@ CKsProxy::QueryInterface(
             HRESULT hr = m_Plugins[Index]->QueryInterface(refiid, Output);
             if (SUCCEEDED(hr))
             {
             HRESULT hr = m_Plugins[Index]->QueryInterface(refiid, Output);
             if (SUCCEEDED(hr))
             {
+#ifdef KSPROXY_TRACE
                 WCHAR Buffer[100];
                 LPOLESTR lpstr;
                 StringFromCLSID(refiid, &lpstr);
                 swprintf(Buffer, L"CKsProxy::QueryInterface plugin %lu supports interface %s\n", Index, lpstr);
                 OutputDebugStringW(Buffer);
                 CoTaskMemFree(lpstr);
                 WCHAR Buffer[100];
                 LPOLESTR lpstr;
                 StringFromCLSID(refiid, &lpstr);
                 swprintf(Buffer, L"CKsProxy::QueryInterface plugin %lu supports interface %s\n", Index, lpstr);
                 OutputDebugStringW(Buffer);
                 CoTaskMemFree(lpstr);
+#endif
                 return hr;
             }
         }
     }
                 return hr;
             }
         }
     }
-
+#ifdef KSPROXY_TRACE
     WCHAR Buffer[MAX_PATH];
     LPOLESTR lpstr;
     StringFromCLSID(refiid, &lpstr);
     swprintf(Buffer, L"CKsProxy::QueryInterface: NoInterface for %s !!!\n", lpstr);
     OutputDebugStringW(Buffer);
     CoTaskMemFree(lpstr);
     WCHAR Buffer[MAX_PATH];
     LPOLESTR lpstr;
     StringFromCLSID(refiid, &lpstr);
     swprintf(Buffer, L"CKsProxy::QueryInterface: NoInterface for %s !!!\n", lpstr);
     OutputDebugStringW(Buffer);
     CoTaskMemFree(lpstr);
-
+#endif
 
     return E_NOINTERFACE;
 }
 
     return E_NOINTERFACE;
 }
@@ -377,7 +379,9 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::GetPages(CAUUID *pPages)
 {
 STDMETHODCALLTYPE
 CKsProxy::GetPages(CAUUID *pPages)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetPages NotImplemented\n");
     OutputDebugStringW(L"CKsProxy::GetPages NotImplemented\n");
+#endif
 
     if (!pPages)
         return E_POINTER;
 
     if (!pPages)
         return E_POINTER;
@@ -493,7 +497,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsGetTime(
     LONGLONG* Time)
 {
 CKsProxy::KsGetTime(
     LONGLONG* Time)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetTime\n");
     OutputDebugStringW(L"CKsProxy::KsGetTime\n");
+#endif
+
     return PerformClockProperty(KSPROPERTY_CLOCK_TIME, KSPROPERTY_TYPE_GET, (PVOID)Time, sizeof(LONGLONG));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_TIME, KSPROPERTY_TYPE_GET, (PVOID)Time, sizeof(LONGLONG));
 }
 
@@ -502,7 +509,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsSetTime(
     LONGLONG Time)
 {
 CKsProxy::KsSetTime(
     LONGLONG Time)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsSetTime\n");
     OutputDebugStringW(L"CKsProxy::KsSetTime\n");
+#endif
+
     return PerformClockProperty(KSPROPERTY_CLOCK_TIME, KSPROPERTY_TYPE_SET, (PVOID)&Time, sizeof(LONGLONG));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_TIME, KSPROPERTY_TYPE_SET, (PVOID)&Time, sizeof(LONGLONG));
 }
 
@@ -511,7 +521,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsGetPhysicalTime(
     LONGLONG* Time)
 {
 CKsProxy::KsGetPhysicalTime(
     LONGLONG* Time)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetPhysicalTime\n");
     OutputDebugStringW(L"CKsProxy::KsGetPhysicalTime\n");
+#endif
+
     return PerformClockProperty(KSPROPERTY_CLOCK_PHYSICALTIME, KSPROPERTY_TYPE_GET, (PVOID)Time, sizeof(LONGLONG));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_PHYSICALTIME, KSPROPERTY_TYPE_GET, (PVOID)Time, sizeof(LONGLONG));
 }
 
@@ -520,7 +533,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsSetPhysicalTime(
     LONGLONG Time)
 {
 CKsProxy::KsSetPhysicalTime(
     LONGLONG Time)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsSetPhysicalTime\n");
     OutputDebugStringW(L"CKsProxy::KsSetPhysicalTime\n");
+#endif
+
     return PerformClockProperty(KSPROPERTY_CLOCK_PHYSICALTIME, KSPROPERTY_TYPE_SET, (PVOID)&Time, sizeof(LONGLONG));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_PHYSICALTIME, KSPROPERTY_TYPE_SET, (PVOID)&Time, sizeof(LONGLONG));
 }
 
@@ -529,7 +545,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsGetCorrelatedTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
 CKsProxy::KsGetCorrelatedTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetCorrelatedTime\n");
     OutputDebugStringW(L"CKsProxy::KsGetCorrelatedTime\n");
+#endif
+
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDTIME, KSPROPERTY_TYPE_GET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDTIME, KSPROPERTY_TYPE_GET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
@@ -538,7 +557,9 @@ STDMETHODCALLTYPE
 CKsProxy::KsSetCorrelatedTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
 CKsProxy::KsSetCorrelatedTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsSetCorrelatedTime\n");
     OutputDebugStringW(L"CKsProxy::KsSetCorrelatedTime\n");
+#endif
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDTIME, KSPROPERTY_TYPE_SET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDTIME, KSPROPERTY_TYPE_SET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
@@ -547,7 +568,9 @@ STDMETHODCALLTYPE
 CKsProxy::KsGetCorrelatedPhysicalTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
 CKsProxy::KsGetCorrelatedPhysicalTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetCorrelatedPhysicalTime\n");
     OutputDebugStringW(L"CKsProxy::KsGetCorrelatedPhysicalTime\n");
+#endif
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDPHYSICALTIME, KSPROPERTY_TYPE_GET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDPHYSICALTIME, KSPROPERTY_TYPE_GET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
@@ -556,7 +579,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsSetCorrelatedPhysicalTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
 CKsProxy::KsSetCorrelatedPhysicalTime(
     KSCORRELATED_TIME* CorrelatedTime)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsSetCorrelatedPhysicalTime\n");
     OutputDebugStringW(L"CKsProxy::KsSetCorrelatedPhysicalTime\n");
+#endif
+
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDPHYSICALTIME, KSPROPERTY_TYPE_SET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_CORRELATEDPHYSICALTIME, KSPROPERTY_TYPE_SET, (PVOID)CorrelatedTime, sizeof(KSCORRELATED_TIME));
 }
 
@@ -565,7 +591,9 @@ STDMETHODCALLTYPE
 CKsProxy::KsGetResolution(
     KSRESOLUTION* Resolution)
 {
 CKsProxy::KsGetResolution(
     KSRESOLUTION* Resolution)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetResolution\n");
     OutputDebugStringW(L"CKsProxy::KsGetResolution\n");
+#endif
     return PerformClockProperty(KSPROPERTY_CLOCK_RESOLUTION, KSPROPERTY_TYPE_GET, (PVOID)Resolution, sizeof(KSRESOLUTION));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_RESOLUTION, KSPROPERTY_TYPE_GET, (PVOID)Resolution, sizeof(KSRESOLUTION));
 }
 
@@ -574,7 +602,9 @@ STDMETHODCALLTYPE
 CKsProxy::KsGetState(
     KSSTATE* State)
 {
 CKsProxy::KsGetState(
     KSSTATE* State)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetState\n");
     OutputDebugStringW(L"CKsProxy::KsGetState\n");
+#endif
     return PerformClockProperty(KSPROPERTY_CLOCK_STATE, KSPROPERTY_TYPE_GET, (PVOID)State, sizeof(KSSTATE));
 }
 
     return PerformClockProperty(KSPROPERTY_CLOCK_STATE, KSPROPERTY_TYPE_GET, (PVOID)State, sizeof(KSSTATE));
 }
 
@@ -590,7 +620,9 @@ CKsProxy::GetTime(
     KSPROPERTY Property;
     ULONG BytesReturned;
 
     KSPROPERTY Property;
     ULONG BytesReturned;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetTime\n");
     OutputDebugStringW(L"CKsProxy::GetTime\n");
+#endif
 
     if (!pTime)
         return E_POINTER;
 
     if (!pTime)
         return E_POINTER;
@@ -635,7 +667,9 @@ CKsProxy::AdviseTime(
     ULONG BytesReturned;
     PKSEVENT_TIME_MARK Event;
 
     ULONG BytesReturned;
     PKSEVENT_TIME_MARK Event;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::AdviseTime\n");
     OutputDebugStringW(L"CKsProxy::AdviseTime\n");
+#endif
 
     //
     //FIXME locks
 
     //
     //FIXME locks
@@ -701,7 +735,9 @@ CKsProxy::AdvisePeriodic(
     ULONG BytesReturned;
     PKSEVENT_TIME_INTERVAL Event;
 
     ULONG BytesReturned;
     PKSEVENT_TIME_INTERVAL Event;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::AdvisePeriodic\n");
     OutputDebugStringW(L"CKsProxy::AdvisePeriodic\n");
+#endif
 
     //
     //FIXME locks
 
     //
     //FIXME locks
@@ -763,7 +799,9 @@ CKsProxy::Unadvise(
     HRESULT hr;
     ULONG BytesReturned;
 
     HRESULT hr;
     ULONG BytesReturned;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Unadvise\n");
     OutputDebugStringW(L"CKsProxy::Unadvise\n");
+#endif
 
     if (m_hClock)
     {
 
     if (m_hClock)
     {
@@ -801,7 +839,10 @@ CKsProxy::GetCapabilities(
     Property.Id = KSPROPERTY_MEDIASEEKING_CAPABILITIES;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_CAPABILITIES;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetCapabilities\n");
     OutputDebugStringW(L"CKsProxy::GetCapabilities\n");
+#endif
+
 
     if (!pCapabilities)
         return E_POINTER;
 
     if (!pCapabilities)
         return E_POINTER;
@@ -851,7 +892,9 @@ CKsProxy::CheckCapabilities(
     DWORD Capabilities;
     HRESULT hr;
 
     DWORD Capabilities;
     HRESULT hr;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::CheckCapabilities\n");
     OutputDebugStringW(L"CKsProxy::CheckCapabilities\n");
+#endif
 
     if (!pCapabilities)
         return E_POINTER;
 
     if (!pCapabilities)
         return E_POINTER;
@@ -929,11 +972,13 @@ CKsProxy::IsFormatSupported(
     ULONG Index;
     HRESULT hr = S_FALSE;
 
     ULONG Index;
     HRESULT hr = S_FALSE;
 
+#ifdef KSPROXY_TRACE
     WCHAR Buffer[100];
     LPOLESTR pstr;
     StringFromCLSID(*pFormat, &pstr);
     swprintf(Buffer, L"CKsProxy::IsFormatSupported %s\n",pstr);
     OutputDebugStringW(Buffer);
     WCHAR Buffer[100];
     LPOLESTR pstr;
     StringFromCLSID(*pFormat, &pstr);
     swprintf(Buffer, L"CKsProxy::IsFormatSupported %s\n",pstr);
     OutputDebugStringW(Buffer);
+#endif
 
     if (!pFormat)
         return E_POINTER;
 
     if (!pFormat)
         return E_POINTER;
@@ -942,8 +987,10 @@ CKsProxy::IsFormatSupported(
     hr = GetMediaSeekingFormats(&FormatList);
     if (SUCCEEDED(hr))
     {
     hr = GetMediaSeekingFormats(&FormatList);
     if (SUCCEEDED(hr))
     {
+#ifdef KSPROXY_TRACE
         swprintf(Buffer, L"CKsProxy::IsFormatSupported NumFormat %lu\n",FormatList->Count);
         OutputDebugStringW(Buffer);
         swprintf(Buffer, L"CKsProxy::IsFormatSupported NumFormat %lu\n",FormatList->Count);
         OutputDebugStringW(Buffer);
+#endif
 
         //iterate through format list
         pGuid = (LPGUID)(FormatList + 1);
 
         //iterate through format list
         pGuid = (LPGUID)(FormatList + 1);
@@ -976,7 +1023,9 @@ CKsProxy::IsFormatSupported(
         {
             // plugin does not support interface
             hr = S_FALSE;
         {
             // plugin does not support interface
             hr = S_FALSE;
+#ifdef KSPROXY_TRACE
             OutputDebugStringW(L"CKsProxy::IsFormatSupported plugin does not support IMediaSeeking interface\n");
             OutputDebugStringW(L"CKsProxy::IsFormatSupported plugin does not support IMediaSeeking interface\n");
+#endif
             break;
         }
 
             break;
         }
 
@@ -1001,7 +1050,9 @@ CKsProxy::QueryPreferredFormat(
     HRESULT hr;
     ULONG Index;
 
     HRESULT hr;
     ULONG Index;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::QueryPreferredFormat\n");
     OutputDebugStringW(L"CKsProxy::QueryPreferredFormat\n");
+#endif
 
     if (!pFormat)
         return E_POINTER;
 
     if (!pFormat)
         return E_POINTER;
@@ -1061,7 +1112,9 @@ CKsProxy::GetTimeFormat(
     Property.Id = KSPROPERTY_MEDIASEEKING_TIMEFORMAT;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_TIMEFORMAT;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetTimeFormat\n");
     OutputDebugStringW(L"CKsProxy::GetTimeFormat\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pFormat, sizeof(GUID), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pFormat, sizeof(GUID), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1101,7 +1154,9 @@ CKsProxy::IsUsingTimeFormat(
 {
     GUID Format;
 
 {
     GUID Format;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::IsUsingTimeFormat\n");
     OutputDebugStringW(L"CKsProxy::IsUsingTimeFormat\n");
+#endif
 
     if (FAILED(QueryPreferredFormat(&Format)))
         return S_FALSE;
 
     if (FAILED(QueryPreferredFormat(&Format)))
         return S_FALSE;
@@ -1125,7 +1180,9 @@ CKsProxy::SetTimeFormat(
     Property.Id = KSPROPERTY_MEDIASEEKING_TIMEFORMAT;
     Property.Flags = KSPROPERTY_TYPE_SET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_TIMEFORMAT;
     Property.Flags = KSPROPERTY_TYPE_SET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::SetTimeFormat\n");
     OutputDebugStringW(L"CKsProxy::SetTimeFormat\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pFormat, sizeof(GUID), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pFormat, sizeof(GUID), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1173,7 +1230,9 @@ CKsProxy::GetDuration(
     Property.Id = KSPROPERTY_MEDIASEEKING_DURATION;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_DURATION;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetDuration\n");
     OutputDebugStringW(L"CKsProxy::GetDuration\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pDuration, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pDuration, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1219,7 +1278,9 @@ CKsProxy::GetStopPosition(
     Property.Id = KSPROPERTY_MEDIASEEKING_STOPPOSITION;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_STOPPOSITION;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetStopPosition\n");
     OutputDebugStringW(L"CKsProxy::GetStopPosition\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pStop, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pStop, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1265,7 +1326,9 @@ CKsProxy::GetCurrentPosition(
     Property.Id = KSPROPERTY_MEDIASEEKING_POSITION;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_POSITION;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetCurrentPosition\n");
     OutputDebugStringW(L"CKsProxy::GetCurrentPosition\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pCurrent, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pCurrent, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1315,7 +1378,9 @@ CKsProxy::ConvertTimeFormat(
     Property.Property.Id = KSPROPERTY_MEDIASEEKING_CONVERTTIMEFORMAT;
     Property.Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Property.Id = KSPROPERTY_MEDIASEEKING_CONVERTTIMEFORMAT;
     Property.Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::ConvertTimeFormat\n");
     OutputDebugStringW(L"CKsProxy::ConvertTimeFormat\n");
+#endif
 
     if (!pTargetFormat)
     {
 
     if (!pTargetFormat)
     {
@@ -1398,7 +1463,9 @@ CKsProxy::SetPositions(
     Positions.Stop = *pStop;
     Positions.StopFlags = (KS_SEEKING_FLAGS)dwStopFlags;
 
     Positions.Stop = *pStop;
     Positions.StopFlags = (KS_SEEKING_FLAGS)dwStopFlags;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::SetPositions\n");
     OutputDebugStringW(L"CKsProxy::SetPositions\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)&Positions, sizeof(KSPROPERTY_POSITIONS), &BytesReturned);
     if (SUCCEEDED(hr))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)&Positions, sizeof(KSPROPERTY_POSITIONS), &BytesReturned);
     if (SUCCEEDED(hr))
@@ -1459,7 +1526,9 @@ CKsProxy::GetPositions(
 {
     HRESULT hr;
 
 {
     HRESULT hr;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetPositions\n");
     OutputDebugStringW(L"CKsProxy::GetPositions\n");
+#endif
 
     hr = GetCurrentPosition(pCurrent);
     if (SUCCEEDED(hr))
 
     hr = GetCurrentPosition(pCurrent);
     if (SUCCEEDED(hr))
@@ -1483,7 +1552,9 @@ CKsProxy::GetAvailable(
     Property.Id = KSPROPERTY_MEDIASEEKING_AVAILABLE;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_AVAILABLE;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetAvailable\n");
     OutputDebugStringW(L"CKsProxy::GetAvailable\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)&Media, sizeof(KSPROPERTY_MEDIAAVAILABLE), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)&Media, sizeof(KSPROPERTY_MEDIAAVAILABLE), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1527,7 +1598,9 @@ STDMETHODCALLTYPE
 CKsProxy::SetRate(
     double dRate)
 {
 CKsProxy::SetRate(
     double dRate)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::SetRate\n");
     OutputDebugStringW(L"CKsProxy::SetRate\n");
+#endif
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1536,7 +1609,9 @@ STDMETHODCALLTYPE
 CKsProxy::GetRate(
     double *pdRate)
 {
 CKsProxy::GetRate(
     double *pdRate)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetRate\n");
     OutputDebugStringW(L"CKsProxy::GetRate\n");
+#endif
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1553,7 +1628,9 @@ CKsProxy::GetPreroll(
     Property.Id = KSPROPERTY_MEDIASEEKING_PREROLL;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
     Property.Id = KSPROPERTY_MEDIASEEKING_PREROLL;
     Property.Flags = KSPROPERTY_TYPE_GET;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetPreroll\n");
     OutputDebugStringW(L"CKsProxy::GetPreroll\n");
+#endif
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pllPreroll, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
 
     hr = KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)pllPreroll, sizeof(LONGLONG), &BytesReturned);
     if (hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_FOUND) || hr == MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_SET_NOT_FOUND))
@@ -1599,7 +1676,7 @@ CKsProxy::GetMiscFlags()
     HRESULT hr;
     PIN_DIRECTION PinDirection;
     KSPIN_COMMUNICATION Communication;
     HRESULT hr;
     PIN_DIRECTION PinDirection;
     KSPIN_COMMUNICATION Communication;
-    WCHAR Buffer[100];
+
 
     for(Index = 0; Index < m_Pins.size(); Index++)
     {
 
     for(Index = 0; Index < m_Pins.size(); Index++)
     {
@@ -1623,8 +1700,12 @@ CKsProxy::GetMiscFlags()
         }
     }
 
         }
     }
 
+#ifdef KSPROXY_TRACE
+    WCHAR Buffer[100];
     swprintf(Buffer, L"CKsProxy::GetMiscFlags stub Flags %x\n", Flags);
     OutputDebugStringW(Buffer);
     swprintf(Buffer, L"CKsProxy::GetMiscFlags stub Flags %x\n", Flags);
     OutputDebugStringW(Buffer);
+#endif
+
     return Flags;
 }
 
     return Flags;
 }
 
@@ -1640,8 +1721,11 @@ CKsProxy::KsProperty(
     ULONG DataLength,
     ULONG* BytesReturned)
 {
     ULONG DataLength,
     ULONG* BytesReturned)
 {
-    assert(m_hDevice != 0);
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsProperty\n");
     OutputDebugStringW(L"CKsProxy::KsProperty\n");
+#endif
+
+    assert(m_hDevice != 0);
     return KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)Property, PropertyLength, (PVOID)PropertyData, DataLength, BytesReturned);
 }
 
     return KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_PROPERTY, (PVOID)Property, PropertyLength, (PVOID)PropertyData, DataLength, BytesReturned);
 }
 
@@ -1654,8 +1738,11 @@ CKsProxy::KsMethod(
     ULONG DataLength,
     ULONG* BytesReturned)
 {
     ULONG DataLength,
     ULONG* BytesReturned)
 {
-    assert(m_hDevice != 0);
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsMethod\n");
     OutputDebugStringW(L"CKsProxy::KsMethod\n");
+#endif
+
+    assert(m_hDevice != 0);
     return KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_METHOD, (PVOID)Method, MethodLength, (PVOID)MethodData, DataLength, BytesReturned);
 }
 
     return KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_METHOD, (PVOID)Method, MethodLength, (PVOID)MethodData, DataLength, BytesReturned);
 }
 
@@ -1668,8 +1755,11 @@ CKsProxy::KsEvent(
     ULONG DataLength,
     ULONG* BytesReturned)
 {
     ULONG DataLength,
     ULONG* BytesReturned)
 {
-    assert(m_hDevice != 0);
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsEvent\n");
     OutputDebugStringW(L"CKsProxy::KsEvent\n");
+#endif
+
+    assert(m_hDevice != 0);
     if (EventLength)
         return KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_ENABLE_EVENT, (PVOID)Event, EventLength, (PVOID)EventData, DataLength, BytesReturned);
     else
     if (EventLength)
         return KsSynchronousDeviceControl(m_hDevice, IOCTL_KS_ENABLE_EVENT, (PVOID)Event, EventLength, (PVOID)EventData, DataLength, BytesReturned);
     else
@@ -1692,7 +1782,9 @@ CKsProxy::Set(
 {
     ULONG BytesReturned;
 
 {
     ULONG BytesReturned;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Set\n");
     OutputDebugStringW(L"CKsProxy::Set\n");
+#endif
 
     if (cbInstanceData)
     {
 
     if (cbInstanceData)
     {
@@ -1736,7 +1828,9 @@ CKsProxy::Get(
 {
     ULONG BytesReturned;
 
 {
     ULONG BytesReturned;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Get\n");
     OutputDebugStringW(L"CKsProxy::Get\n");
+#endif
 
     if (cbInstanceData)
     {
 
     if (cbInstanceData)
     {
@@ -1777,7 +1871,9 @@ CKsProxy::QuerySupported(
     KSPROPERTY Property;
     ULONG BytesReturned;
 
     KSPROPERTY Property;
     ULONG BytesReturned;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::QuerySupported\n");
     OutputDebugStringW(L"CKsProxy::QuerySupported\n");
+#endif
 
     Property.Set = guidPropSet;
     Property.Id = dwPropID;
 
     Property.Set = guidPropSet;
     Property.Id = dwPropID;
@@ -1802,7 +1898,9 @@ CKsProxy::CreateNodeInstance(
 {
     HRESULT hr;
 
 {
     HRESULT hr;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::CreateNodeInstance\n");
     OutputDebugStringW(L"CKsProxy::CreateNodeInstance\n");
+#endif
 
     *Interface = NULL;
 
 
     *Interface = NULL;
 
@@ -1827,7 +1925,9 @@ STDMETHODCALLTYPE
 CKsProxy::KsAddAggregate(
     IN REFGUID AggregateClass)
 {
 CKsProxy::KsAddAggregate(
     IN REFGUID AggregateClass)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsAddAggregate NotImplemented\n");
     OutputDebugStringW(L"CKsProxy::KsAddAggregate NotImplemented\n");
+#endif
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1836,7 +1936,10 @@ STDMETHODCALLTYPE
 CKsProxy::KsRemoveAggregate(
     REFGUID AggregateClass)
 {
 CKsProxy::KsRemoveAggregate(
     REFGUID AggregateClass)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsRemoveAggregate NotImplemented\n");
     OutputDebugStringW(L"CKsProxy::KsRemoveAggregate NotImplemented\n");
+#endif
+
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1849,8 +1952,10 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::IsDirty()
 {
 STDMETHODCALLTYPE
 CKsProxy::IsDirty()
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::IsDirty Notimplemented\n");
     DebugBreak();
     OutputDebugStringW(L"CKsProxy::IsDirty Notimplemented\n");
     DebugBreak();
+#endif
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1868,7 +1973,9 @@ CKsProxy::Load(
     ULONG PinId;
     LPOLESTR pMajor, pSub, pFormat;
 
     ULONG PinId;
     LPOLESTR pMajor, pSub, pFormat;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Load\n");
     OutputDebugStringW(L"CKsProxy::Load\n");
+#endif
 
 #if 0
     ULONG Version = ReadInt(pStm, hr);
 
 #if 0
     ULONG Version = ReadInt(pStm, hr);
@@ -1938,7 +2045,10 @@ CKsProxy::Save(
     IStream *pStm,
     BOOL fClearDirty)
 {
     IStream *pStm,
     BOOL fClearDirty)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Save Notimplemented\n");
     OutputDebugStringW(L"CKsProxy::Save Notimplemented\n");
+#endif
+
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1947,8 +2057,11 @@ STDMETHODCALLTYPE
 CKsProxy::GetSizeMax(
     ULARGE_INTEGER *pcbSize)
 {
 CKsProxy::GetSizeMax(
     ULARGE_INTEGER *pcbSize)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetSizeMax Notimplemented\n");
     DebugBreak();
     OutputDebugStringW(L"CKsProxy::GetSizeMax Notimplemented\n");
     DebugBreak();
+#endif
+
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -1960,8 +2073,9 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::DeviceInfo(CLSID *pclsidInterfaceClass, LPWSTR *pwszSymbolicLink)
 {
 STDMETHODCALLTYPE
 CKsProxy::DeviceInfo(CLSID *pclsidInterfaceClass, LPWSTR *pwszSymbolicLink)
 {
-
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::DeviceInfo\n");
     OutputDebugStringW(L"CKsProxy::DeviceInfo\n");
+#endif
 
     if (!m_DevicePath)
     {
 
     if (!m_DevicePath)
     {
@@ -1986,7 +2100,9 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::Reassociate(void)
 {
 STDMETHODCALLTYPE
 CKsProxy::Reassociate(void)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Reassociate\n");
     OutputDebugStringW(L"CKsProxy::Reassociate\n");
+#endif
 
     if (!m_DevicePath || m_hDevice)
     {
 
     if (!m_DevicePath || m_hDevice)
     {
@@ -2009,7 +2125,9 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::Disassociate(void)
 {
 STDMETHODCALLTYPE
 CKsProxy::Disassociate(void)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Disassociate\n");
     OutputDebugStringW(L"CKsProxy::Disassociate\n");
+#endif
 
     if (!m_hDevice)
         return E_HANDLE;
 
     if (!m_hDevice)
         return E_HANDLE;
@@ -2027,7 +2145,10 @@ HANDLE
 STDMETHODCALLTYPE
 CKsProxy::KsGetClockHandle()
 {
 STDMETHODCALLTYPE
 CKsProxy::KsGetClockHandle()
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetClockHandle\n");
     OutputDebugStringW(L"CKsProxy::KsGetClockHandle\n");
+#endif
+
     return m_hClock;
 }
 
     return m_hClock;
 }
 
@@ -2040,7 +2161,10 @@ HANDLE
 STDMETHODCALLTYPE
 CKsProxy::KsGetObjectHandle()
 {
 STDMETHODCALLTYPE
 CKsProxy::KsGetObjectHandle()
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::KsGetObjectHandle\n");
     OutputDebugStringW(L"CKsProxy::KsGetObjectHandle\n");
+#endif
+
     return m_hDevice;
 }
 
     return m_hDevice;
 }
 
@@ -2051,7 +2175,10 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::InitNew( void)
 {
 STDMETHODCALLTYPE
 CKsProxy::InitNew( void)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::InitNew\n");
     OutputDebugStringW(L"CKsProxy::InitNew\n");
+#endif
+
     return S_OK;
 }
 
     return S_OK;
 }
 
@@ -2338,7 +2465,6 @@ CKsProxy::CreatePins()
     KSPIN_DATAFLOW DataFlow;
     KSPIN_COMMUNICATION Communication;
     HRESULT hr;
     KSPIN_DATAFLOW DataFlow;
     KSPIN_COMMUNICATION Communication;
     HRESULT hr;
-    WCHAR Buffer[100];
     LPWSTR PinName;
     IPin * pPin;
     ULONG InputPin = 0;
     LPWSTR PinName;
     IPin * pPin;
     ULONG InputPin = 0;
@@ -2405,8 +2531,12 @@ CKsProxy::CreatePins()
         // store pins
         m_Pins.push_back(pPin);
 
         // store pins
         m_Pins.push_back(pPin);
 
+#ifdef KSPROXY_TRACE
+        WCHAR Buffer[100];
         swprintf(Buffer, L"Index %lu DataFlow %lu Name %s\n", Index, DataFlow, PinName);
         OutputDebugStringW(Buffer);
         swprintf(Buffer, L"Index %lu DataFlow %lu Name %s\n", Index, DataFlow, PinName);
         OutputDebugStringW(Buffer);
+#endif
+
     }
 
     return S_OK;
     }
 
     return S_OK;
@@ -2417,14 +2547,16 @@ STDMETHODCALLTYPE
 CKsProxy::Load(IPropertyBag *pPropBag, IErrorLog *pErrorLog)
 {
     HRESULT hr;
 CKsProxy::Load(IPropertyBag *pPropBag, IErrorLog *pErrorLog)
 {
     HRESULT hr;
-    WCHAR Buffer[100];
     VARIANT varName;
     LPGUID pGuid;
     ULONG NumGuids = 0;
     HDEVINFO hList;
     SP_DEVICE_INTERFACE_DATA DeviceInterfaceData;
 
     VARIANT varName;
     LPGUID pGuid;
     ULONG NumGuids = 0;
     HDEVINFO hList;
     SP_DEVICE_INTERFACE_DATA DeviceInterfaceData;
 
+#ifdef KSPROXY_TRACE
+    WCHAR Buffer[100];
     OutputDebugStringW(L"CKsProxy::Load\n");
     OutputDebugStringW(L"CKsProxy::Load\n");
+#endif
 
     // read device path
     varName.vt = VT_BSTR;
 
     // read device path
     varName.vt = VT_BSTR;
@@ -2432,14 +2564,18 @@ CKsProxy::Load(IPropertyBag *pPropBag, IErrorLog *pErrorLog)
 
     if (FAILED(hr))
     {
 
     if (FAILED(hr))
     {
+#ifdef KSPROXY_TRACE
         swprintf(Buffer, L"CKsProxy::Load Read %lx\n", hr);
         OutputDebugStringW(Buffer);
         swprintf(Buffer, L"CKsProxy::Load Read %lx\n", hr);
         OutputDebugStringW(Buffer);
+#endif
         return MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, GetLastError());
     }
 
         return MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, GetLastError());
     }
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"DevicePath: ");
     OutputDebugStringW(varName.bstrVal);
     OutputDebugStringW(L"\n");
     OutputDebugStringW(L"DevicePath: ");
     OutputDebugStringW(varName.bstrVal);
     OutputDebugStringW(L"\n");
+#endif
 
     // create device list
     hList = SetupDiCreateDeviceInfoListExW(NULL, NULL, NULL, NULL);
 
     // create device list
     hList = SetupDiCreateDeviceInfoListExW(NULL, NULL, NULL, NULL);
@@ -2468,9 +2604,10 @@ CKsProxy::Load(IPropertyBag *pPropBag, IErrorLog *pErrorLog)
     if (m_hDevice == INVALID_HANDLE_VALUE)
     {
         // failed to open device
     if (m_hDevice == INVALID_HANDLE_VALUE)
     {
         // failed to open device
+#ifdef KSPROXY_TRACE
         swprintf(Buffer, L"CKsProxy:: failed to open device with %lx\n", GetLastError());
         OutputDebugStringW(Buffer);
         swprintf(Buffer, L"CKsProxy:: failed to open device with %lx\n", GetLastError());
         OutputDebugStringW(Buffer);
-
+#endif
         return MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, GetLastError());
     }
 
         return MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, GetLastError());
     }
 
@@ -2508,7 +2645,9 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::Save(IPropertyBag *pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties)
 {
 STDMETHODCALLTYPE
 CKsProxy::Save(IPropertyBag *pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Save\n");
     OutputDebugStringW(L"CKsProxy::Save\n");
+#endif
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -2521,7 +2660,9 @@ STDMETHODCALLTYPE
 CKsProxy::GetClassID(
     CLSID *pClassID)
 {
 CKsProxy::GetClassID(
     CLSID *pClassID)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetClassID\n");
     OutputDebugStringW(L"CKsProxy::GetClassID\n");
+#endif
     CopyMemory(pClassID, &CLSID_Proxy, sizeof(GUID));
 
     return S_OK;
     CopyMemory(pClassID, &CLSID_Proxy, sizeof(GUID));
 
     return S_OK;
@@ -2533,7 +2674,9 @@ CKsProxy::Stop()
 {
     HRESULT hr;
 
 {
     HRESULT hr;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Stop\n");
     OutputDebugStringW(L"CKsProxy::Stop\n");
+#endif
 
     EnterCriticalSection(&m_Lock);
 
 
     EnterCriticalSection(&m_Lock);
 
@@ -2552,7 +2695,9 @@ CKsProxy::Pause()
 {
     HRESULT hr = S_OK;
 
 {
     HRESULT hr = S_OK;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Pause\n");
     OutputDebugStringW(L"CKsProxy::Pause\n");
+#endif
 
     EnterCriticalSection(&m_Lock);
 
 
     EnterCriticalSection(&m_Lock);
 
@@ -2583,7 +2728,9 @@ CKsProxy::Run(
 {
     HRESULT hr;
 
 {
     HRESULT hr;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Run\n");
     OutputDebugStringW(L"CKsProxy::Run\n");
+#endif
 
     EnterCriticalSection(&m_Lock);
 
 
     EnterCriticalSection(&m_Lock);
 
@@ -2673,9 +2820,11 @@ CKsProxy::SetPinState(
         // now set state
         hr = KsSynchronousDeviceControl(hPin, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)&State, sizeof(KSSTATE), &BytesReturned);
 
         // now set state
         hr = KsSynchronousDeviceControl(hPin, IOCTL_KS_PROPERTY, (PVOID)&Property, sizeof(KSPROPERTY), (PVOID)&State, sizeof(KSSTATE), &BytesReturned);
 
+#ifdef KSPROXY_TRACE
         WCHAR Buffer[100];
         swprintf(Buffer, L"CKsProxy::SetPinState Index %u State %u hr %lx\n", Index, State, hr);
         OutputDebugStringW(Buffer);
         WCHAR Buffer[100];
         swprintf(Buffer, L"CKsProxy::SetPinState Index %u State %u hr %lx\n", Index, State, hr);
         OutputDebugStringW(Buffer);
+#endif
 
         if (FAILED(hr))
             return hr;
 
         if (FAILED(hr))
             return hr;
@@ -2711,8 +2860,9 @@ CKsProxy::SetSyncSource(
     ULONG BytesReturned;
     PIN_DIRECTION PinDir;
 
     ULONG BytesReturned;
     PIN_DIRECTION PinDir;
 
-// Plug In Distributor: IKsClock 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::SetSyncSource\n");
     OutputDebugStringW(L"CKsProxy::SetSyncSource\n");
+#endif
 
     // FIXME
     // need locks
 
     // FIXME
     // need locks
@@ -2806,7 +2956,9 @@ CKsProxy::SetSyncSource(
     }
 
     m_ReferenceClock = pClock;
     }
 
     m_ReferenceClock = pClock;
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::SetSyncSource done\n");
     OutputDebugStringW(L"CKsProxy::SetSyncSource done\n");
+#endif
     return S_OK;
 }
 
     return S_OK;
 }
 
@@ -2815,7 +2967,9 @@ STDMETHODCALLTYPE
 CKsProxy::GetSyncSource(
     IReferenceClock **pClock)
 {
 CKsProxy::GetSyncSource(
     IReferenceClock **pClock)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::GetSyncSource\n");
     OutputDebugStringW(L"CKsProxy::GetSyncSource\n");
+#endif
 
     if (!pClock)
         return E_POINTER;
 
     if (!pClock)
         return E_POINTER;
@@ -2832,7 +2986,10 @@ STDMETHODCALLTYPE
 CKsProxy::EnumPins(
     IEnumPins **ppEnum)
 {
 CKsProxy::EnumPins(
     IEnumPins **ppEnum)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::EnumPins\n");
     OutputDebugStringW(L"CKsProxy::EnumPins\n");
+#endif
+
     return CEnumPins_fnConstructor(m_Pins, IID_IEnumPins, (void**)ppEnum);
 }
 
     return CEnumPins_fnConstructor(m_Pins, IID_IEnumPins, (void**)ppEnum);
 }
 
@@ -2843,7 +3000,9 @@ CKsProxy::FindPin(
 {
     ULONG PinId;
 
 {
     ULONG PinId;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::FindPin\n");
     OutputDebugStringW(L"CKsProxy::FindPin\n");
+#endif
 
     if (!ppPin)
         return E_POINTER;
 
     if (!ppPin)
         return E_POINTER;
@@ -2879,7 +3038,9 @@ CKsProxy::QueryFilterInfo(
     if (!pInfo)
         return E_POINTER;
 
     if (!pInfo)
         return E_POINTER;
 
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::QueryFilterInfo\n");
     OutputDebugStringW(L"CKsProxy::QueryFilterInfo\n");
+#endif
 
     pInfo->achName[0] = L'\0';
     pInfo->pGraph = m_pGraph;
 
     pInfo->achName[0] = L'\0';
     pInfo->pGraph = m_pGraph;
@@ -2922,7 +3083,9 @@ STDMETHODCALLTYPE
 CKsProxy::QueryVendorInfo(
     LPWSTR *pVendorInfo)
 {
 CKsProxy::QueryVendorInfo(
     LPWSTR *pVendorInfo)
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::QueryVendorInfo\n");
     OutputDebugStringW(L"CKsProxy::QueryVendorInfo\n");
+#endif
     return StringFromCLSID(CLSID_Proxy, pVendorInfo);
 }
 
     return StringFromCLSID(CLSID_Proxy, pVendorInfo);
 }
 
@@ -2934,7 +3097,10 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::Register()
 {
 STDMETHODCALLTYPE
 CKsProxy::Register()
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Register : NotImplemented\n");
     OutputDebugStringW(L"CKsProxy::Register : NotImplemented\n");
+#endif
+
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -2942,7 +3108,9 @@ HRESULT
 STDMETHODCALLTYPE
 CKsProxy::Unregister()
 {
 STDMETHODCALLTYPE
 CKsProxy::Unregister()
 {
+#ifdef KSPROXY_TRACE
     OutputDebugStringW(L"CKsProxy::Unregister : NotImplemented\n");
     OutputDebugStringW(L"CKsProxy::Unregister : NotImplemented\n");
+#endif
     return E_NOTIMPL;
 }
 
     return E_NOTIMPL;
 }
 
@@ -2953,11 +3121,13 @@ CKsProxy_Constructor(
     REFIID riid,
     LPVOID * ppv)
 {
     REFIID riid,
     LPVOID * ppv)
 {
+#ifdef KSPROXY_TRACE
     WCHAR Buffer[100];
     LPOLESTR pstr;
     StringFromCLSID(riid, &pstr);
     swprintf(Buffer, L"CKsProxy_Constructor pUnkOuter %p riid %s\n", pUnkOuter, pstr);
     OutputDebugStringW(Buffer);
     WCHAR Buffer[100];
     LPOLESTR pstr;
     StringFromCLSID(riid, &pstr);
     swprintf(Buffer, L"CKsProxy_Constructor pUnkOuter %p riid %s\n", pUnkOuter, pstr);
     OutputDebugStringW(Buffer);
+#endif
 
     CKsProxy * handler = new CKsProxy();
 
 
     CKsProxy * handler = new CKsProxy();