MathewSachin / Captura

Capture Screen, Audio, Cursor, Mouse Clicks and Keystrokes
https://mathewsachin.github.io/Captura/
MIT License
9.81k stars 1.84k forks source link

Webcam setting causing Captura to crash #557

Open OasYs1068 opened 4 years ago

OasYs1068 commented 4 years ago

Describe the bug If I set webcam to "No Webcam" in the setting, the next time I try to enter Webcam section in the setting, Captura will crash.

To Reproduce

  1. Go to Webcam setting
  2. Switch Webcam to "No Webcam"
  3. Click "back" then click "Webcam" again
  4. Crash

Expected behavior I should be able to enter Webcam setting again normally.

Desktop

Error Messages System.NullReferenceException: 未将对象引用设置到对象的实例。 在 Captura.WebcamPage.b__9_0(Object S, DependencyPropertyChangedEventArgs E) 在 System.Windows.UIElement.RaiseDependencyPropertyChanged(EventPrivateKey key, DependencyPropertyChangedEventArgs args) 在 System.Windows.UIElement.OnIsVisibleChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) 在 System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e) 在 System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e) 在 System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args) 在 System.Windows.UIElement.UpdateIsVisibleCache() 在 System.Windows.UIElement.OnVisualParentChanged(DependencyObject oldParent) 在 System.Windows.Controls.Page.OnVisualParentChanged(DependencyObject oldParent) 在 System.Windows.Media.Visual.FireOnVisualParentChanged(DependencyObject oldParent) 在 System.Windows.Media.Visual.AddVisualChild(Visual child) 在 System.Windows.FrameworkElement.set_TemplateChild(UIElement value) 在 System.Windows.Controls.ContentPresenter.UseContentTemplate.BuildVisualTree(FrameworkElement container) 在 System.Windows.StyleHelper.ApplyTemplateContent(UncommonField1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate) 在 System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField1 templateDataField, FrameworkElement container) 在 System.Windows.FrameworkElement.ApplyTemplate() 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Border.MeasureOverride(Size constraint) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Control.MeasureOverride(Size constraint) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.DockPanel.MeasureOverride(Size constraint) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint) 在 System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Documents.AdornerDecorator.MeasureOverride(Size constraint) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Border.MeasureOverride(Size constraint) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Window.MeasureOverrideHelper(Size constraint) 在 System.Windows.Window.MeasureOverride(Size availableSize) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.ContextLayoutManager.UpdateLayout() 在 System.Windows.Interop.HwndSource.SetLayoutSize() 在 System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value) 在 System.Windows.Window.SetRootVisual() 在 System.Windows.Window.SetRootVisualAndUpdateSTC() 在 System.Windows.Window.SetupInitialState(Double requestedTop, Double requestedLeft, Double requestedWidth, Double requestedHeight) 在 System.Windows.Window.CreateSourceWindow(Boolean duringShow) 在 System.Windows.Window.ShowHelper(Object booleanBox) 在 System.Windows.Window.ShowDialog() 在 Captura.App.App_OnDispatcherUnhandledException(Object Sender, DispatcherUnhandledExceptionEventArgs Args) 在 System.Windows.Threading.Dispatcher.CatchException(Exception e) 在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) 在 System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) 在 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) 在 MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) 在 System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) 在 System.Windows.Application.RunDispatcher(Object ignore) 在 System.Windows.Application.RunInternal(Window window) 在 Captura.App.Main()

peternagelsa commented 4 years ago

Just to contribute to this:

NO issue with the webcam configuration on the following system: OS: Windows 10, version 1709, 64-bit RAM: 8Gb CPU: Intel Core i7-8550U CPU @ 1.8Ghz Graphic Card: Intel UHD Graphics 620 Captura Version: 9.00 beta 4 Realtek Integrated Camera

SIMILAR issue with the webcam configuration on the following systems: OS: Windows 10, version 1909, 64-bit RAM: 4Gb CPU: Intel Core i5-4300 CPU @ 2.6Ghz Graphic Card: Intel HD Graphics 4600 Captura Version: 9.00 beta 4 Realtek Integrated Camera

&

OS: Windows 10, version 2004, 64-bit RAM: 4Gb CPU: Intel Core i5-8520 CPU @ 1.6Ghz Graphic Card: Intel UHD Graphics 620 Captura Version: 9.00 beta 4 HP Truevision HD Integrated Camera

Thanks Peter

xkonglong commented 4 years ago

I do not have Webcam .

if I click setting-> Webcam, application will be crash and exit.