Häufig gestellte Fragen (FAQ)
Portierungshinweise (pdf)
Wo finde ich die Agilent SICL/VISA Software?
Aktuelle Version
Treiber
|
1. Laden des Treibers für einen Agilent GPIB LAN Controller |
|
|
|
|
Stellen Sie sicher, dass der Controller korrekt in der SICL-Software (Agilent Connection Expert) konfiguriert wurde.
Verwenden Sie dann den folgenden Befehl in HTBasic:
LOAD BIN "HPIBS;DEV lan[IP Address]:lan0 ISC 7"
lan0 ist der Standard-Gerätename (Device Name), passen Sie diesen bei Bedarf entsprechend der Einstellung im Agilent Connection Expert an. Die IP Addresse muß entsprechend Ihrer Konfiguration angepasst werden.
Der Treiber für den LAN/GPIB-Controller kann auch über das Device Setup geladen werden. Fügen Sie dazu einen neuen Treiber "HPIBS" hinzu und öffnen Sie die Eigenschaften (Properties). Als SICL Device Name tragen Sie ein:
lan[address IP]:lan0
Wenn alle Einstellungen vorgenommen wurden, können Sie den Treiber über "Load" laden.
|
| |
|
| | |
|
|
2. Wie lade ich den Treiber für ein GPIB PCMCIA Interface? |
|
|
|
|
Stellen Sie sicher, dass der Controller korrekt in der Treibersoftware des Herstellers konfiguriert wurde.
Für einen National Instruments kompatiblen Controller verwenden Sie dann den folgenden Befehl in HTBasic:
LOAD BIN "GPIBNI;DEV xxxx"
Für einen Agilent kompatiblen Controller verwenden Sie dann den folgenden Befehl in HTBasic:
LOAD BIN "HPIBS;DEV xxxx"
xxxx ist der Gerätename (Device Name), der in der Treibersoftware des Herstellers konfiguriert wurde.
|
| |
|
| | |
|
|
3. Welche USB-Geräte unterstützt der USBS-Treiber? |
|
|
|
|
|
5. Wie konfiguriere ich GPIO-Interfaces unter HTBasic? |
|
|
|
|
Installieren Sie zunächst die Agilent I/O Libraries. Installieren Sie dann die Software für Ihre GPIO-Steckkarte und anschliessend die Steckkarte selbst in Ihrem System. Notieren Sie sich den Gerätenamen (Device Name). Wenn Sie z.B. ein GPIO-Interface mit dem Gerätenamen gpio12 installiert haben, fügen Sie folgende Zeile zu Ihrer AUTOST Startdatei hinzu:
LOAD BIN "GPIOS;DEV gpio12 ISC 12"
Anschliessend können Sie sofort Daten über das GPIO-Interface ausgeben:
OUTPUT 12;Data
Den ISC (Interface Select Code) können Sie beliebig anpassen (er darf nur nicht mit bereits existierenden ISCs kollidieren), Sie könnten also auch ISC 20 verwenden:
LOAD BIN "GPIOS;DEV gpio12 ISC 20"
|
| |
|
| | |
|
|
6. Welcher Treiber passt zu meiner GPIB Schnittstelle? |
|
|
|
|
HPIBS
Der HPIBS-Treiber unterstützt HP/Agilent komatible GPIB Interfaces. Bevor der Treiber verwendet werden kann, müssen die Agilent I/O Libraries (Agilent Library Suite) installiert werden und das Interface muss als SICL-Interface korrekt konfiguriert werden.
GPIB900
Der Treiber GPIB900 kann ausschliesslich mit den TransEra GPIB Interfaces Modell 900 verwendet werden.
GPIBNI
Der GPIBNI Treiber unterstützt alle GPIB-Schnittstellen, die mit National Instruments kompatibel sind. Bevor der Treiber verwendet werden kann, muss der National Instruments Treiber NI488.2 installiert werden (es sei denn, der Kartenhersteller emuliert diese Software über einen eigenen Treiber wie z.B. Ines oder Keithley).
|
| |
|
| | |
|
|
7. Wie installiere ich eine Agilent GPIB Schnittstelle in HTBasic? |
|
|
|
|
Für die Nutzung von HP/Agilent GPIB-Schnittstellen (oder Kompatiblen) verwenden Sie den Treiber HPIBS.
Stellen Sie sicher, dass die GPIB-Schnittstelle korrekt in der SICL-Software (Agilent Connection Expert) konfiguriert wurde.
Laden Sie den Treiber dann wie folgt:
LOAD BIN "HPIBS;DEV sicl_name ISC isc TIME timeout"
sicl_name ist der Device Name (SICL Interface ID) in den Agilent I/O Libraries / Agilent Connection Expert. Beachten Sie die korrekte Gross- und Kleinschreibung, verwenden Sie den Device Namen also exakt wie angegeben.
isc ist der Interface Select Code für das Gerät.
timeout ist die maximale Zeit, die das Interface warten soll, bevor ein Timeout ausgelöst wird.
Beispiel: LOAD BIN "HPIBS;DEV gpib0 ISC 7"
Sobald der Treiber geladen ist, können Sie Kommandos absetzen
OUTPUT 705;"*IDN?"
ENTER 705;Id$
Beachten Sie: Sie können den Treiber auch in Ihrer AUTOST Datei laden, damit er bei jedem Start von HTBasic automatisch geladen wird.
|
| |
|
| | |
|
|
8. Wie installiere ich ein National Instrument GPIB-Interface? |
|
|
|
|
Für die Nutzung von National Instruments GPIB-Schnittstellen (oder Kompatiblen) verwenden Sie den Treiber GPIBNI.
Stellen Sie sicher, dass die GPIB-Schnittstelle und der Treiber des Herstellers korrekt installiert sind.
Laden Sie dann den Treiber wir folgt:
LOAD BIN "GPIBNI;DEV card_name ISC isc BUS bus [NOTSYS|SYSTEM]"
card_name ist der symbolische Name des Interfaces, wie er in der NI Software definiert ist (Standard: gpib0).
isc ist der Interface Select Code
bus ist die Adresse der Karte auf dem GPIB Bus (kann bei nur einer Karte im System weggelassen werden)
NOTSYS wird angegeben, wenn die Karte im Device Mode verwendet werden soll
SYSTEM installiert die Karte als System Controller (kann weggelassen werden)
Beispiel: LOAD BIN "GPIBNI;DEV gpib0 ISC 7"
Sobald der Treiber geladen ist, können Sie Kommandos absetzen
OUTPUT 705;"*IDN?"
ENTER 705;Id$
Beachten Sie: Sie können den Treiber auch in Ihrer AUTOST Datei laden, damit er bei jedem Start von HTBasic automatisch geladen wird.
|
| |
|
| | |
|
|
9. Wie installiere ich ein GPIO-Interface von TAMS? |
|
|
|
|
Für die Nutzung von HP/Agilent GPIO-Schnittstellen (oder Kompatiblen) verwenden Sie den Treiber GPIOS.
Installieren Sie zunächst die Agilent SICL I/O Libraries, anschliessend den Treiber von TAMS. Stellen Sie sicher, dass die GPIB-Schnittstelle korrekt in der SICL-Software (iocfg32.exe) konfiguriert wurde. Notieren Sie sich den "Device Name".
Laden Sie dann den Treiber unter HTBasic wie folgt:
LOAD BIN "GPIOS";DEV name ISC isc"
name ist der SICL Name wie in den I/O Libraries konfiguriert
isc ist der Interface Select Code
Beispiel: LOAD BIN "GPIOS;DEV gpio ISC 12"
OUTPUT 12;Data ! Data to send
ENTER 12;Read ! Data to read
Info: Den ISC (Interface Select Code) können Sie beliebig anpassen (er darf nur nicht mit bereits existierenden ISCs kollidieren).
|
| |
|
| | |
|
|
10. Wie kann ich mehrere GPIB-Interfaces gleichzeitig verwenden? |
|
|
|
|
Ab HTBasic Version 9.0 unterstützt der HPIBS-Treiber mehrere Interfaces über mehrere Treiberinstanzen.
Beispiel:
LOAD BIN "HPIBS;DEV gpib0 ISC 7"
LOAD BIN "HPIBS;DEV gpib1 ISC 8"
LOAD BIN "HPIBS;DEV gpib3 ISC 13"
In ältere Versionen vor HTBasic 9.0 müssen Sie den HPIBS-Treiber kopieren und umbenennen, um mehrere GPIB-Interfaces ansprechen zu können.
Beispiel:
LOAD BIN "HPIBS;DEV gpib0 ISC 7"
LOAD BIN "HPIBS2;DEV gpib1 ISC 8"
LOAD BIN "HPIBS3;DEV gpib3 ISC 13"
|
| |
|
| | |
|
|
11. Welche GPIB-Interfaces werden von HTBasic unterstützt? |
|
|
|
|
Die folgenden GPIB-Interfaces können unter HTBasic verwendet werden.
Download: Liste im pdf-Format Stand: Mai 2009
|
|
| Treiber für HTBasic Windows 6.x oder älter
| Treiber für HTBasic Windows Release 7.x oder höher
| Hersteller
| Modellnummer
| Bustyp
| Win 95/98
| NT4/2000/XP
| Win 95/98
| NT4/2000/XP
| Capital Equipment
| CE-01000-00200
| ISA
| GPIBH
| N/A
| N/A
| N/A
| Capital Equipment
| CE-01000-00300
| ISA
| GPIBN
| N/A
| N/A
| N/A
| Capital Equipment
| PCI-488
| PCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Capital Equipment
| 488EX
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Capital Equipment
| PC488
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Capital Equipment
| —
| Microchannel
| GPIBN
| N/A
| N/A
| N/A
| Computer Boards Inc
| PCI-GPIB
| PCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Computer Boards Inc
| CPCI-GPIB
| CPCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Computer Boards Inc
| ISA-GPIB
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Computer Boards Inc
| ISA-GPIB/LC
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Computer Boards Inc
| PCM-GPIB
| PCMCIA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Computer Boards Inc
| ISA-GPIB-PC2A
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Computer Boards Inc
| PC104-GPIB
| PC104/ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| HP/Agilent
| 82335
| ISA
| GPIBH
| N/A
| N/A
| N/A
| HP/Agilent
| 82350A/B
| PCI
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| HP/Agilent
| 82357A/B
| USB
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| HP/Agilent
| 82340A/B
| ISA
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| HP/Agilent
| 82341A/C
| ISA
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| HP/Agilent
| 82341D
| ISA
| HPIBS
| N/A
| HPIBS
| N/A
| HP/Agilent
| 27209
| ISA
| GPIBH
| N/A
| N/A
| N/A
| HP/Agilent
| 82351A
| PCIe
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| INES
| GPIB-PCIE
| PCIe
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| INES
| GPIB-USB
| USB
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| INES
| GPIB-PC
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| INES
| GPIB-PCI
| PCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| INES
| PCMCIA
| PCMCIA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| IOTech
| GP488
| ISA
| GPIBN
| N/A
| GPIBN
| N/A
| IOTech
| GP488A
| ISA
| GPIBN
| N/A
| N/A
| N/A
| IOTech
| Personal 488
| ISA
| GPIBN
| GPIBNI
| GPIBN
| GPIBNI
| IOTech
| Personal 488/MM
| PC/104
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| IOTech
| Personal488/AT
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| IOTech
| Personal488/CARD
| PCMCIA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| IOTech
| Personal488/PCI
| PCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| IOTech
| Power 488/NB
| Parallel
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Keithly Metrabyte
| KPC-488.2
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Keithly Metrabyte
| KPC-488.2AT
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Keithly Metrabyte
| KPCI-488
| PCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Keithly Metrabyte
| KPCMCIA
| PCMCIA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| Keithly Metrabyte
| KPS-488
| Microchannel
| GPIBNI
| N/A
| GPIBNI
| N/A
| Keithly Metrabyte
| MBC-488
| ISA
| GPIBN
| N/A
| N/A
| N/A
| National Instruments
| AT-GPIB
| ISA
| GPIBN
| N/A
| GPIBN
| N/A
| National Instruments
| AT-GPIB/TNT
| ISA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| GPIB-1394
| Firewire
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| GPIB-ENET
| Ethernet
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| GPIB-PCII/IIA
| ISA
| GPIBNI
| N/A
| GPIBNI
| N/A
| National Instruments
| GPIB-USB
| USB
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| MC-GPIB
| Microchannel
| GPIBN
| N/A
| N/A
| N/A
| National Instruments
| PC3
| ISA
| GPIBN
| N/A
| N/A
| N/A
| National Instruments
| PCI-GPIB
| PCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| PCI-GPIB+
| PCI
| N/A
| GPIBNI
| N/A
| GPIBNI
| National Instruments
| PCMCIA-GPIB
| PCMCIA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| PCMCIA-GPIB+
| PCMCIA
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| PXI-GPIB
| cPCI
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| National Instruments
| PCIe-GPIB
| PCIe
| GPIBNI
| GPIBNI
| GPIBNI
| GPIBNI
| TAMS
| L488
| Ethernet
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| TAMS
| GPIB-PCIe
| PCIe
| HPIBS
| HPIBS
| HPIBS
| HPIBS
| TAMS
| 60488 / 61488
| PCI
| N/A
| HPIBS
| N/A
| HPIBS
| TAMS
| 63488
| USB
| N/A
| HPIBS
| N/A
| HPIBS
| TransEra
| Model 900
| ISA
| GPIB
| HPIBS
| GPIB
| HPIBS / GPIB900
| Ziatech
| ZT-1444
| ISA
| GPIB
| N/A
| N/A
| N/A
| Ziatech
| ZT-1488A
| ISA
| GPIB
| N/A
| N/A
| N/A
| Ziatech
| ZT 8847
| STD
| GPIB
| N/A
| GPIB
| N/A
| Ziatech
| ZT 8848
| STD
| GPIB
| N/A
| GPIB
| N/A
|
|
| |
|
| | |
|
TCP/IP
|
1. Steuerung von Geräten über LAN (TCP/IP) mittels HTBasic |
|
|
|
|
Mit HTBasic ist es prinzipiell möglich, auch Meßgeräte über LAN mittels TCP/IP zu steuern.
Dazu wird die Agilent SICL I/O Bibliothek benötigt. Die SICL-Bibliothek bietet über eine DLL (sicl32.dll) die Möglichkeit, mit Geräten über TCP/IP zu kommunizieren. Diese DLL bindet man über das DLL Toolkit ein (LOAD DLL..).
Folgende grundsätzliche Funktionen der SICL-DLL werden benötigt:
DLL LOAD "SICL32"
DLL GET "SHORT Sicl32:iopen" AS "Iopen"
DLL GET "SHORT Sicl32:iwrite" AS "Iwrite"
DLL GET "SHORT Sicl32:iread" AS "Iread"
DLL GET "SHORT Sicl32:iclose" AS "Iclose"
Ein Beispielprogramm für die Kommunikation zwischen HTBasic und einem Agilent 16000 Logic Analyzer finden Sie hier.
Diese Anleitung ist auch als pdf-Datei verfügbar.
|
| |
|
| | |
|
Drucker
|
1. HPGL- oder PCL-Befehle auf einem Netzwerk- oder USB-Drucker ausgeben |
|
|
|
|
Verwenden Sie hierzu das Windows-Kommando net use, um einen LPT-Anschluss auf eine lokalen Druckerfreigabe umzuleiten.
Gehen Sie dabei wie folgt vor:
1. Stellen Sie sicher, daß Ihr USB-Drucker für das Netzwerk freigegeben ist
2. Wenn Sie nicht mit einem Netzwerk verbunden sind, dann benötigen Sie einen "Loopback Adapter", bei dem die
Anschlüsse 1 und 3 sowie 2 und 6 des Netzwerksteckers miteinander verbunden sind
ODER
Installieren Sie den Microsoft Loopback Adapter Treiber (siehe Microsoft Homepage)
3. Öffnen Sie eine Eingabeaufforderung (Achtung Windows 7 / Vista: Eingabeafforderung als Administrator öffnen !)
4. Geben Sie auf der Kommandozeile den Befehl ein:
net use lptx \\machine_name\share_name
und drücken Sie ENTER
Machine_name ist der Name Ihres Computers, auf dem der Drucker freigegeben ist, share_name ist der Name des
freigegebenen Druckers und x ist die Portnummer des LPT-Anschlusses, über den Sie drucken wollen.
Der LPT-Anschluss muss nicht unbedingt als physischer Anschluss existieren. Beispiel:
net use lpt1 \\abc1234\lj5 /persistent:yes
Obiges Kommando verbindet den Anschluss LPT1 mit dem freigegeben Drucker lj5 auf dem Computer abc1234
und stellt die Verbindung auch nach einem Neustart wieder her (Option "/persistent:yes").
Wenn das Kommando erfolgreich ausgeführt wurde, erhalten Sie eine Nachricht wie "Das Kommando wurde erfolgreich
ausgeführt". Es kann einige Sekunden dauern, abhängig von der Grösse des Netzwerks und dem Netzwerkverkehr.
Sie können überprüfen, ob die Verbindung erfolgreich erstellt wurde, indem Sie versuchen, eine Verzeichnisliste über
den freigegebenen Port auf den Drucker auszugeben, indem Sie auf der Kommandozeile eingeben:
dir > lpt1
Wenn der Drucker wie oben beschrieben erfolgreich installiert wurde, können Sie nun HPGL- oder PCL-Befehle an den Drucker senden, indem Sie diese auf dem entsprechenden Port (LPT1) ausgeben.
|
| |
|
| | |
|
|
4. Wie ändere ich die HPGL-Liniendicke? |
|
|
|
|
|
5. Welchen ISC verwende ich für meinen Drucker? |
|
|
|
|
HTBasic für Windows
ISC 10 (Windows Standarddrucker im Druckermanager)
ISC 26 (Standard: LPT1 oder LPT2)
HTBasic für DOS
ISC 10 verbunden mit LPT1
ISC 12 verbunden mit LPT2
|
| |
|
| | |
|
|
6. Wie kann ich einen PCL5-Drucker als HPGL-Plotter verwenden? |
|
|
|
|
Die Grafikbeschreibungssprache HP-PCL5 enthält einen HPGL-Interpreter, der den Drucker theoretisch in die Lage versetzt, HPGL-Befehle zu interpretieren und den Drucker daher als Plotter zu verwenden.
Bevor Sie einen solchen Drucker als HPGL-Plotter verwenden können, müssen sie diesen zunächst in den Plotter Modus umschalten. Innerhalb eines HTBasic-Programms kann man dazu das Kommando PLOTTER IS verwenden.
Beispiel: PLOTTER IS 26;"HPGL;PCL5"
Nach dem Plotten verwenden Sie das Kommando PLOTTER IS CRT,"INTERNAL", um den HPGL-Modus wieder zu verlassen und den Drucker in den PCL5-Modus zurückzuschalten.
Beachten Sie: Es gibt eine ganze Reihe von Druckern, die nur den PCL3 Modus unterstützen und daher nicht als HPGL-Plotter nutzbar sind.
|
| |
|
| | |
|
|
7. Wie kann ich mehrere Drucker ansprechen? |
|
|
|
|
Es gibt mindestens zwei Methoden, um mehrere Drucker in einem HTBasic Programm zu verwenden.
Interaktive Methode
Mit dieser Methode wählt der Programmbediener den jeweils gewünschten Drucker über eine Dialogbox aus. Das Programm öffnet dabei mit dem Befehl CONTROL PRT,102;1 einen Dialog, mit dem man bequem den gewünschten Drucker auswählen kann.
In diesem Dialog kann man auch weitere Parameter für den Druckvorgang festlegen, z.B. Papierorientierung, Standard-Zeichensatz und mehr.
Statische Methode
Diese Methode ermöglicht es dem Programmierer, alle unter HTBasic verwendbaren Drucker auszuwählen. Dabei verwenden Sie das HTBasic Device Setup (im Menü "Tools"), um verschiedene Drucker unter HTBasic zu installieren. Jeder dieser installierten Drucker hat dann unter HTBasic einen eigenen ISC und wird über diesen gesteuert.
Beispiel: DUMP DEVICE IS 20 ! Select the printer at ISC 20
|
| |
|
| | |
|
Allgemein
|
2. Umwandeln einer BDAT von einer Workstation zur Nutzung unter HTBasic |
|
|
|
|
Modifizieren Sie die folgende Vorlage so, dass @Oldbdatfile auf die Datei Ihrer HP Workstation zeigt. Dann wird die Datei in ein HTBasic-Format konvertiert. Das Programm erzeugt eine neue Datei und fügt die korrekt formatierten Daten in die neue Datei ein.
DIM Oldbdat$[256]
ASSIGN @Oldbdatfile TO "a:\oldbdat.bdat";FORMAT MSB FIRST
ENTER @Oldbdatfile;Oldbdat$
CONFIGURE BDAT LSB FIRST
CREATE BDAT "c:\newbdat.bdat",1
ASSIGN @Newbdatfile TO "c:\newbdat.bdat"
OUTPUT @Newbdatfile;Oldbdat$
ASSIGN @Oldbdatfile TO *
ASSIGN @Newbdatfile TO *
END
|
| |
|
| | |
|
|
3. Wie ermittle ich die Seriennummer von HTBasic? |
|
|
|
|
|
4. Wozu dient das AUTOST-Programm? |
|
|
|
|
|
5. Wie kann ich meinem Multimeter ASCII-Kommandos senden und binär empfangen? |
|
|
|
|
Wenn Sie grössere Datenmengen von einem Messgerät empfangen wollen, empfiehlt es sich oftmals, die Daten binär zu übertragen.
Eine elegante Methode besteht darin, für die Befehle OUTPUT und ENTER die gleiche Adresse zu verwenden, aber die Funktionen jeweils im ASCII- oder Binärmodus zu öffnen.
REAL Mesures(1:100)
ASSIGN @I_asc TO 712;FORMAT ON ! mode ASCII for commands
ASSIGN @I_bin TO 712;FORMAT OFF ! mode binary for answers
OUTPUT @I_asc;"READ?"
ENTER @I_bin;Mesures(*)
|
| |
|
| | |
|
|
6. Wie kann ich meine HTBasic-Programme vor Manipulation schützen? |
|
|
|
|
Wenn Sie den Programmcode auf einer Workstation ablegen, besteht immer das Risiko, dass ein Anwender Ihren Programmcode ändert, wenn er die Entwicklerversion von HTBasic besitzt.
Es gibt verschiedene Möglichkeiten, Ihren Code vor Manipulation oder unerlaubter Weitergabe zu schützen:
1. Auf allen Workstations nur die Runtime-Version verwenden
2. Verwendung des Kommandos SECURE
3. Auslagern vieler Funktionen in SUBs und Kompilieren der SUBs mit dem Numeric Compiler
4. Auslagern von Funktionen in DLLs
5. Verwendung der Secure Library für HTBasic (USB Dongle Bibliothek)
|
| |
|
| | |
|
|
7. Beim Doppelklick auf .bas oder .prg Datei startet HTBasic nicht |
|
|
|
|
Dieser Windows-Fehler existiert in einigen Windows-Versionen (z.B. Deutsch), wenn die Datei sich in einem Verzeichnis befindet, dessen Namen Leerzeichen enthält. Um das zu korrigieren, gehen Sie wie folgt vor:
1. Öffnen Sie den Windows Explorer
2. Öffnen Sie das Menü "Extras->Ordneroptionen"
3. Klicken Sie auf den Kartenreiter "Dateitypen"
4. Tippen Sie "prg" (ohne Anführungszeichen)
5. Klicken Sie auf "Erweitert"
6. Klicken Sie auf "Bearbeiten"
7. Klicken Sie in das Bearbeitungsfeld "Anwendung für diesen Vorgang" und korrigieren Sie den Eintrag, indem Sie
die Zeichen %1 in Anführungszeichen setzen, also:
C:\Programme\HTBwin95\HTBwin.exe -alt "%1"
8. Klicken Sie auf "OK"
9. Klicken Sie auf "OK"
10. Klicken Sie auf "OK"
|
| |
|
| | |
|
DLL Toolkit
|
2. Wie kann ich Systeminformationen in HTBasic erhalten? |
|
|
|
|
Verschiedene Systeminformationen sind über DLL-Funktionen verfügbar. Im Folgenden zeigen wir ein Beispiel.
! Load the kernel32.dll
DLL LOAD "KERNEL32"
! Declare the function that gets the computer name
DLL GET "stdcall void KERNEL32:GetComputerNameA" AS "Getcptname"
! Declare the function that reads the available drives
DLL GET "stdcall long KERNEL32:GetLogicalDrives" AS "Getdrives"
! Variable Declaration
DIM Computer_name$[80]
LONG Buffersize
Buffersize=MAXLEN(Computer_name$)
LONG Bitmask
INTEGER I
! Read the name of the machine
Getcptname(Computer_name$,Buffersize)
! Get the available drives
Bitmask=FNGetdrives
PRINT "Computer Name = ";Computer_name$
PRINT "Drives Available = ";
FOR I=0 TO 15
IF BIT(Bitmask,I) THEN PRINT CHR$(NUM("A")+I);": ";
NEXT I
DLL UNLOAD ALL
END
|
| |
|
| | |
|
|
3. Wie kann ich Emails von HTBasic aus senden? |
|
|
|
|
Ab HTBasic 8.0 können Sie Emails über eine DLL aus dem DLL Toolkit versenden. Das DLL Toolkit Beispiel finden Sie unter dem Namen HTBMail im DLL Toolkit Verzeichnis.
Programmbeispiel:
DIM Subject$[256]
DIM Body$[256]
DLL LOAD "HTBMAIL"
DLL GET "void HTBMAIL:Sendmail"
Address$="sales@htbasic.com"
Subject$="E-mail sent from HTBASIC"
Attachment$=""
Body$="Hello, How are you?"
Sendmail(Address$,Subject$,Attachment$,Body$)
DLL UNLOAD ALL
END
|
| |
|
| | |
|
Version 8.0
|