Fehlermeldung "Let und Set Zuweisungsanwendungen werden nicht mehr unterstützt" bei einem Code aus vb6 nun in vb2019

  • VB.NET
  • .NET (FX) 4.5–4.8

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

    Fehlermeldung "Let und Set Zuweisungsanwendungen werden nicht mehr unterstützt" bei einem Code aus vb6 nun in vb2019

    Hallo,

    ich habe vor längerem mal was mit vb gemacht und nun wollte ich es mir nochmal mit vb2019 Comunity aufrufen um wieder herein zu kommen. Nun kommt da die Fehlermeldung "Let und Set Zuweisungsanwendungen werden nicht mehr unterstützt"

    wie / was muss ich hier ändern?


    Danke
    Holger

    Visual Basic-Quellcode

    1. Set ieOBJ = CreateObject("InternetExplorer.Application")
    2. ' Webseite mit Parameter aufrufen
    3. ieOBJ.Navigate WebSite & "/?sl=" & LangCodeFrom &
    4. "&tl=" & LangCodeTo & "#" & LangCodeTo & "|" &
    5. LangCodeFrom & "|" & OrigineText

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „HDebus“ ()

    @HDebus VB6 und .NET 4.5 sind disjunkt.
    Präzisiere den Titel Deines Threads.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    HDebus schrieb:

    Set ieOBJ = CreateObject("InternetExplorer.Application")
    Diese Zeile hat mehrere Probleme.
    1. Das Set, welches du notfalls einfach weglassen kannst.

    2. Das CreateObject verursacht late binding.
    Das kollidiert mit der unbedingt empfohlenen Einstellung Option Strict On

    3. InternetExplorer ist ein COM-Objekt

    VB.NET-Quellcode

    1. Dim IEobj As New SHDocVw.InternetExplorer
    wäre die direkte Übersetzung deiner Zeile.
    Dazu musst du vorher eine Referenz auf die COM-Bibliothek SHDocVw.dll machen.

    Wenn du aber statt dessen die WebBrowser-Klasse verwendest, wird der IE als Managed .Net-Objekt zur Verfügung gestellt.

    VB.NET-Quellcode

    1. Dim WebBrowser = New System.Windows.Forms.WebBrowser

    So ist es .Net-konform.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    @HDebus Das mit der Referenz sind zwei Teile:
    • Du musst Deinem Projekt einen Verweis auf die betreffende DLL hinzufügen:
      Projekt => Eigenschaften => Verweise => Hinzufügen
    • Du musst in der Klasse, die auf diese DLL zugreift, deren Namespace importieren:
      Ganz oben in der Datei, über Class
      Imports DER_NAMESPACE
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    HDebus schrieb:

    ich habe vor längerem mal was mit vb gemacht und nun wollte ich es mir nochmal mit vb2019 Comunity aufrufen um wieder herein zu kommen.

    Das ist der völlig falsche weg - so kommst du nirgends rein, ausser in Teufels Küche.
    Hat RFG schon gesagt: "vb6 und vb2019 sind disjunkt" - wie er sich auszudrücken beliebt.
    Auf deutsch heisst das: vb6 und vb2019 sind etwas komplett unterschiedliches.

    willst du vb2019 lernen, lerne vb2019.
    Erster Schritt dazu: Vergiss alles, was du je in vb6 dir angeeignet hast.
    Vor allem versuche nicht, vb6-Projekte nach vb.Net zu portieren. Das ist ein Job für Spezialisten, die sich ausgezeichnet in .net auskennen müssen, und zusätzlich in vb6.