Seit Update von VS2015: Entwurfsansicht nur mit Fehlermeldung

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

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Hutti.

    Seit Update von VS2015: Entwurfsansicht nur mit Fehlermeldung

    Guten Tag liebe Coder-Gemeinschaft

    Ich habe seit ca. 2 Wochen ein wildes Hin und Her, mit einer DLL, die ich teilweise wirklich verzweifelt versuche, in mein Projekt einzubinden.
    Wie auch schon bei vorherigen Fragen und Threads, von mir, gilt auch hier: Gerne fragen, insofern ich mich nicht deutlich, resp. verständlich ausdrücke.



    Ausgangslage:
    Ich habe eine .dll Datei, die ich gerne in mein VB.NET Projekt einbauen möchte/muss. Dabei handelt es sich um eine .dll-Datei der Firma "Scaps" ----> ( scaps.com/index.php?id=10 )
    Von ihnen haben wir (unser Betrieb) ein Scanner-Programm, der gleich wie ein CAD Programm, .dxf und ähnliche Dateien einliest und darstellt, aber zusätzlich die Spiegel der Lasermaschine steuert.
    Die .dll-Datei habe ich auf ihrer Webseite nicht gesehen, aber dafür die Anleitung, mit Dokumentation zu den Funktionen, in 3 Sprachen als PDF erhältlich.
    Es gibt noch ein Programm, dass ähnliches, nicht vollautomatisiert, macht, aber diese ist in C# geschrieben und ich verfüge über alle Projektdaten (Visuel Studio)



    Mein Ziel:
    Da wir vermehrt mit CNC-Ablaufprogrammen arbeiten wollen und gewisse Aufträge es notwendig machen, dass wir mehrere .dxf-Dateien (Jobfiles) für ein und den selben Auftrag erstellen müssen und diese, in einer bestimmten Reihenfolge, abarbeiten müssen, ist es natürlich von grossem Vorteil, wenn diese "Jobfiles" ebenfalls, mittels "Klarpfad", in die Ablaufprogramme hinein programmiert werden können. Somit entfällt die von Hand auszuführende Jobwechsel im Scpasprogramm.
    Daher ein VB.net (Notfalls auch C#, aber NUR Notfalls ;) ) Programm, der die Jobfiles "auswechselt". Im Ablaufprogramm wird der Pfad, des zu ladenden Jobfiles in einer .txt Datei geschrieben und im Anschluss sollte die VB.net-Anwendung gestartet werden.



    Die Problemstellung:
    Eines vorweg: Ich konnte, seit ich dieses Projekt in Angriff genommen habe, die .dll nie in ein VB.net Projekt einbinden, dass diese dann auch erkannte. Daher habe ich mich bisher an der bereits vorhanden C#-Anwendung bedient. Ich habe alles umgeschrieben wie ich es benötige und es schien zu funktionieren, einzig der FileSystemWatcher wollte nicht so recht. Bevor ich das endgültig korrigieren wollte (Diesen komplett entfernen), habe ich das VS2015 updaten lassen und VC++ auch gleich mit eingepackt (Wegen andere Projekte). Ich will hier nicht das Update verantwortlich machen, aber seit diesem Update, erkennt VS die .dll nicht mehr, selbst in dem Projekt, in der es bisher ohne weitere Probleme funktioniert hat.
    Hier die Meldungen:

    Ich hab dadurch kein Visuelle Darstellung, des Fensters im Designer mehr, sondern einzig, die Meldungen.
    Die DLL habe ich natürlich über "Verweis hinzufügen" eingebunden und die scheint keine Probleme, bei diesem Schritt, zu machen:

    (Es handelt sich um die: "AxInterop.SAMLIGHT_CLIENT_CTRL_OCXLib.dll")

    Interessant ist auch, dass die Funktionen weiterhin erkannt werden und auch richtig bearbeitet:

    Wie hier zu sehen, zeigt es die richtige Syntax an und beim anwenden, lädt dieser Codeteil, den angegebenen Jobfile in die Scapsoberfläche.
    Grundsätzlich scheint es zu funktionieren(?)

    Da ist ja noch einer Meldung das axSamlightClientCtrl1 nicht deklariert wurde.
    Ich habe es mittlerweile umbenannt in ScapsCom, aber die Meldung bleibt bestehen.




    So, das wäre meine derzeitige Situation, ich hoffe Jemand kann mir helfen.
    Was auch noch gesagt werden muss: Ich habe tatsächlich, weder Codemässig noch sonst wie, an den Projekten manipuliert.
    Diese Meldungen kamen vor dem Update nicht und sogleich nach dem Update, bevor ich eine Änderung vorgenommen habe, waren sie da.

    Gruss Hutti

    Hutti schrieb:

    nach dem Update
    Erstell mal im 15er Studio ein neues Projekt, füge diesem die DLL hinzu und versuch, ein Control daraus auf die GUI zu ziehen.
    Was passiert?
    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!

    RodFromGermany schrieb:

    ... und versuch, ein Control daraus auf die GUI zu ziehen.
    Was passiert?


    Ich sehe keine "Control's", die von der DLL kommen. Diese sollten doch auch in der Toolbox vorzufinden sein?


    Jedenfalls werden die Funktionen, wie z.B ScLoadJob() nicht gefunden, resp. angezeigt.

    OK: Habe es etwas falsch angegangen! Die Funktionen sind nach wie vor auffindbar.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim SCC As New AxSAMLIGHT_CLIENT_CTRL_OCXLib.AxScSamlightClientCtrl
    3. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    4. SCC.ScLoadJob()
    5. End Sub
    6. End Class



    So der praktische Test ging nicht gut aus. Ich wollte mittels Buttonclick überprüfen, ob Scaps läuft (ScIsRunning())

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Hutti“ ()

    Hutti schrieb:

    auch in der Toolbox
    Rechtsklick auf die Toolbox, "Elemente auswählen", Deine DLL auswählen.
    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!
    Hast Du noch das 13er Studio auf Deinem Rechner?
    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!

    Hutti schrieb:

    installier es
    Ja, ich denk, das ist die beste Lösung.
    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!
    So muss mich entschuldigen! Ich habe die Komponente in der COM-Komponenten Liste gefunden und zur Toolbox hinzugefügt.
    (Auf Grund der Namen, die anders sind und der vielen Elemente von Scaps, habe ich es übersehen)
    Als ich dieses Element dann auf mein Fenster gezogen habe, wurden automatisch die Verweise eingerichtet.

    Ich bedanke mich ein weiteres Mal bei dir.

    Gruss
    Hutti

    PS: so siehts nun aus

    (Das Element, welches aussieht wie eine PictureBox mit einem Kreis, kann auch visible=False gesetzt werden.)