[ERROR]Object reference not set to an instance of an object.

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Mono.

    [ERROR]Object reference not set to an instance of an object.

    hallo leute,
    ich habe gestern kleinere änderungen an einem code vogrenommen und plötzlich trat dann ein fehler aus den ich nicht beheben konnst aber v.l.t. könnt ihr mir weiterhelfen!
    ERROR:

    Quellcode

    1. System.NullReferenceException was unhandled
    2. Message=Object reference not set to an instance of an object.
    3. Source=$$$$$$
    4. StackTrace:
    5. at ParaPixDll.Client.Main() in $$$$\Client.vb:line 64
    6. at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
    7. at System.Threading.ExecutionContext.runTryCode(Object userData)
    8. at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
    9. at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
    10. at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
    11. at System.Threading.ThreadHelper.ThreadStart()
    12. InnerException:

    Bild:


    Danke im vorraus,
    vb-anonym :thumbsup:
    Eigendlich genau so bis auf eine kleine änderung!:
    ALT:

    VB.NET-Quellcode

    1. Dim image As Bitmap
    2. DirectCast(Client.PicBox.Image, Bitmap)
    3. Dim stream As New MemoryStream
    4. image.Save(stream, ImageFormat.Png)
    5. If Client.SendImage(Image.FromStream(stream)) Then
    6. Return
    7. End If
    8. Thread.Sleep(1000 /FPS)

    NEU:

    VB.NET-Quellcode

    1. Dim png As Image
    2. png = Cam.CopyFrame(PicBox, New RectangleF(0, 0, CameraOutputSize.Width, CameraOutputSize.Height))
    3. Dim ms As New MemoryStream()
    4. png.Save(ms, Imaging.ImageFormat.Jpeg)
    5. Dim Img As Image = Image.FromStream(ms)
    6. SendImage(Img)
    7. Thread.Sleep(1000 / FPS)

    vb-anonym
    Die Fehlermeldung ist doch eindeutig.
    Ein verwendetes Objekt in der Zeile ist Nothing (ohne Referenz)
    Da du den MemoryStream drüber erzeugst und der zweite Parameter eine Shared Eigenschaft ist, kann also nur png Nothing sein.

    Offenbar gibt in dieser Zeile

    VB.NET-Quellcode

    1. png = Cam.CopyFrame(PicBox, New RectangleF(0, 0, CameraOutputSize.Width, CameraOutputSize.Height))


    Cam.CopyFrame kein Objekt zurück.
    Da ich die Funktion nicht kenne, kann ich dir nicht sagen wieso.

    Cheers Mono
    Das ist meine Signatur und sie wird wunderbar sein!