| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: RS232 Schnittstelle ansprechen, gibt es da Neuerungen seit AC2000 ? (1863 mal gelesen)
|
Ralf33 Mitglied
Beiträge: 52 Registriert: 27.09.2005 W2000 Autocad 2000 Athlon 64, 1 GB RAM
|
erstellt am: 27. Sep. 2005 19:40 <-- editieren / zitieren --> Unities abgeben:
Hallo, um Daten über die RS232 Schnittstelle einzulesen benutze ich eine sogenannte Port.dll. (Autocad 2000) Das funktioniert aber nur unter Windows 98. Hat sich da eigentlich seit AC2000 irgendetwas geändert, kann ich mit den Nachfolgeversionen einfacher die Schnittstellen ansprechen. Bei Autodesk finde ich nichts darüber. Gibt es sonst eine einfache Möglichkeit die RS232 Schnittstelle unter Windows 2000 mit Autocad 2000 VBA anzusprechen ? Gruß Ralf33 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 27. Sep. 2005 21:08 <-- editieren / zitieren --> Unities abgeben: Nur für Ralf33
Hallo Ralf, gibt´s so was noch, RS232 ??? Ich habe da in Erinnerung:
Code:
Dim strCom As String strCom = "com1:9600,8,1,p" kanal = FreeFile Open strCom For Input As #kanal ...
Es kommt darauf an was du machen willst.Stelli
------------------ Warum lisp'eln wenns's auch anders geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ralf33 Mitglied
Beiträge: 52 Registriert: 27.09.2005 W2000 Autocad 2000 Athlon 64, 1 GB RAM
|
erstellt am: 27. Sep. 2005 21:46 <-- editieren / zitieren --> Unities abgeben:
Hallo Stelli, besten Dank für deine Antwort ! Ja bei mir gibt es noch eine RS232 :-) Ich werde deinen Vorschlag mal ausprobieren, vielleicht klappt es. Warum kann ich in Autocad VBA eigentlich nicht das MSCOMM Control einbinden, damit müßte es doch auch problemlos funktionieren. Leider kommt beim Einbinden immer die Fehlermeldung, das das Comtrol nicht korrekt lizensiert ist. Gruß Ralf33 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 27. Sep. 2005 21:49 <-- editieren / zitieren --> Unities abgeben: Nur für Ralf33
|
Ralf33 Mitglied
Beiträge: 52 Registriert: 27.09.2005 W2000 Autocad 2000 Athlon 64, 1 GB RAM
|
erstellt am: 27. Sep. 2005 21:53 <-- editieren / zitieren --> Unities abgeben:
Hallo Stelli, doch, ich habe VB6, aber ich will Daten von einem Messgerät einlesen und die in Autocad nutzen. Unter Win98 geht es einwandfrei, ich brauche es jetzt aber unter W2000. Gruß Ralf33 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 27. Sep. 2005 22:04 <-- editieren / zitieren --> Unities abgeben: Nur für Ralf33
Hallo Ralf, so als letzte Aktion für Heute. (Mein SQL ist durch) Ich mache das meistens mit VB. Geht genauso wie VBA. Holst die unter Verweisen die AutoCAD Biliothek und ab gehts. Ich habe eine kleine Funktion in VB die prüft ob eine Version von AutoCAD geladen ist. Die geht auch bei mehrfach Installation verschiedener Versionen.
Code:
Function ac_Programm_gestartet%() ' ' Prüft ob AutoCAD geladen ist ' ' Dim Prog As String Prog = acad_app On Error GoTo ACAD14 Set obj_ACAD_app = GetObject(, Prog) GoTo ACADOK ACAD14: Resume ACAD14_weiter ACAD14_weiter: Prog = "AutoCAD.application.14" On Error GoTo ACAD2000 Set obj_ACAD_app = GetObject(, Prog) acad_app = Prog acad_TYP = 14 GoTo ACADOK ACAD2000: Resume ACAD2000_weiter ACAD2000_weiter: Prog = "AutoCAD.application.15" On Error GoTo Noch_nicht_geladen Set obj_ACAD_app = GetObject(, Prog) acad_TYP = 15 acad_app = Prog GoTo ACADOK ACAD2004: Resume ACAD2004_weiter ACAD2004_weiter: Prog = "AutoCAD.application.16" On Error GoTo Noch_nicht_geladen Set obj_ACAD_app = GetObject(, Prog) acad_TYP = 16 acad_app = Prog GoTo ACADOK ACADOK: obj_ACAD_app.Visible = True ac_Programm_gestartet = True Debug.Print obj_ACAD_app.Version acad_TYP = Val(Left$(obj_ACAD_app.Version, 2)) Exit Function Noch_nicht_geladen: ac_Programm_gestartet = False MsgBox "AutoCAD ist nicht geladen !", vbCritical + vbMsgBoxHelpButton, "AC Tools", "actools.chm", 10 Exit Function End Function
obj_ACAD_app ist eine globale Variable für die Application obj_ACAD_app.ActiveDocument entspricht ThisDrawing in VBA Wenn du ThisDrawing auch als globale Variable abfüllst, kannst du den Code zwischen VBA und VB hin und her kopieren. Also viel Erfolg Stelli Kleiner Nachtrag: acad_app ist global mit "autocad.application" vorbelegt. acad_typ ist eine globale Variable die die Version beiinhaltet. So kannst du verschiedene Funktionen Versionsabhängig gestalten, weil nicht jede Version alles kann ------------------ Warum lisp'eln wenn's auch anders geht. [Diese Nachricht wurde von Stelli1 am 27. Sep. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Ingenieur (m/w/d) Prozess- / Verfahrenstechnik | Menschen und Technologien zu verbinden, den Perfect Match für unsere Kunden zu gestalten, immer die richtigen Expert:innen für die jeweilige Herausforderung zu finden - das ist unser Anspruch bei FERCHAU und dafür suchen wir Sie: als ambitionierte:n Kolleg:in, der:die wie wir Technologien auf die nächste Stufe bringen möchte. Wir realisieren spannende Projekte für namhafte Kunden im Anlagenbau und übernehmen Verantwortung für komplexe Entwicklungsprojekte.... | Anzeige ansehen | Verfahrenstechnik |
|
Ralf33 Mitglied
Beiträge: 52 Registriert: 27.09.2005 W2000 Autocad 2000 Athlon 64, 1 GB RAM
|
erstellt am: 27. Sep. 2005 22:30 <-- editieren / zitieren --> Unities abgeben:
Hallo Stelli, ich habe zwischendurch VB6 installiert. Dabei wurde ein neues Comm Control installiert, das ich auch problemlos in AC2000 nutzen kann. Vielen Dank für deine Mühe und gute Nacht ! Viele Grüße, Ralf33. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|