App installieren
How to install the app on iOS
Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
MDE String lesen (c/c++)
- Ersteller d0x
- Erstellt am
Hallo,
ich hab folgendes Problem. Mein chef fragte mich gerade ob ich morgen für ein MDE Gerät (Barcodescanner) einen C Code schreiben könnte (hier in der Firma wird nicht in C programmiert). Ich dachte erst es sei auf dem MDE Gerät Windows CE drauf. Leider ist das nicht der fall. Mein Chef weiss selber nicht genau wie das teil läuft. Ich bekomme es auch erst morgen. Er meinte das es über dos läuft. Ich vermute einfach mal das es mir einen String über die Seriale schnittstelle sendet. Ich wüsste mal gerne ob von euch einer schonmal eine anwendung für diese art von Gerät geschrieben hat. Und habt ihr einen Beispielcode oder eine erklärung wie man Daten über Com1 empfängt? Er meinte ich soll die daten auch speichern, aber das bekomm ich alles selber hin.
Dann hätte ich auch noch ne frage ob ich die bibliotheken
iostream.h
fstream.h
conio.h
verwenden kann, oder ob sie irgendwie an windows gebunden sind.
Ich hab gerade mal gegoogelt und solche mde geräte hier gefunden:
http://www.barcode-scanner.ch/shop/de-ch/dept_18.html
da steht ja "frei programmierbar in C und Basic". Meint ihr die haben eigene Bibliotheken?
Danke im vorraus,
d0x
ich hab folgendes Problem. Mein chef fragte mich gerade ob ich morgen für ein MDE Gerät (Barcodescanner) einen C Code schreiben könnte (hier in der Firma wird nicht in C programmiert). Ich dachte erst es sei auf dem MDE Gerät Windows CE drauf. Leider ist das nicht der fall. Mein Chef weiss selber nicht genau wie das teil läuft. Ich bekomme es auch erst morgen. Er meinte das es über dos läuft. Ich vermute einfach mal das es mir einen String über die Seriale schnittstelle sendet. Ich wüsste mal gerne ob von euch einer schonmal eine anwendung für diese art von Gerät geschrieben hat. Und habt ihr einen Beispielcode oder eine erklärung wie man Daten über Com1 empfängt? Er meinte ich soll die daten auch speichern, aber das bekomm ich alles selber hin.
Dann hätte ich auch noch ne frage ob ich die bibliotheken
iostream.h
fstream.h
conio.h
verwenden kann, oder ob sie irgendwie an windows gebunden sind.
Ich hab gerade mal gegoogelt und solche mde geräte hier gefunden:
http://www.barcode-scanner.ch/shop/de-ch/dept_18.html
da steht ja "frei programmierbar in C und Basic". Meint ihr die haben eigene Bibliotheken?
Danke im vorraus,
d0x
Puh, also unter Linux wäre das ein einfaches cat /dev/ttyS[x], und oh Wunder über Wunder, bei DOS (und nur da ) ist es nicht viel schwieriger.
DOS kennt ein paar spezielle Gerätenamen, ähnlich wie /dev bei Linux (nur eben viel viel viel weniger und statisch benannt). Dazu gehört CON, LTP1, LTP2 (afaik), und soweit ich mich erinnere auch COM1 und COM2.
Ein type xyz > COM1 würde also zB. den Inhalt der Datei xyz auf COM1 ausgeben. Ich kann dir allerdings nur das Buch "PC Intern 4" ans Herz legen, da findest du alles, was du brauchst.
DOS kennt ein paar spezielle Gerätenamen, ähnlich wie /dev bei Linux (nur eben viel viel viel weniger und statisch benannt). Dazu gehört CON, LTP1, LTP2 (afaik), und soweit ich mich erinnere auch COM1 und COM2.
Ein type xyz > COM1 würde also zB. den Inhalt der Datei xyz auf COM1 ausgeben. Ich kann dir allerdings nur das Buch "PC Intern 4" ans Herz legen, da findest du alles, was du brauchst.
- Mitglied seit
- 16.11.2001
- Beiträge
- 21.664
- Renomée
- 1.247
- Standort
- München
- Aktuelle Projekte
- World Community Grid
- Lieblingsprojekt
- Folding@Home
- Meine Systeme
- AMD Ryzen 9 5950X
- BOINC-Statistiken
- Folding@Home-Statistiken
- Prozessor
- AMD Ryzen 9 5950X
- Mainboard
- ASUS TUF Gaming X570-Pro [WI-FI]
- Kühlung
- be quiet! Shadow Rock 3
- Speicher
- 4x 16GB DDR4-3200 Corsair Vengeance LPX
- Grafikprozessor
- ASRock Radeon RX 550 Phantom Gaming Aktiv 2GB
- Display
- LG 27UL850-W, 27"
- SSD
- Samsung 980 PRO 2TB, Samsung 840 EVO 500GB
- HDD
- Seagate Barracuda 7200.14 3TB SATA3
- Optisches Laufwerk
- Samsung SH-S183A SATA schwarz (im externen Gehäuse)
- Gehäuse
- be quiet! Silent Base 802 schwarz
- Netzteil
- be quiet! Straight Power 11 Platinum 550W
- Tastatur
- Logitech G613 Lightspeed
- Maus
- Logitech M510
- Betriebssystem
- Ubuntu Linux 22.04
- Webbrowser
- Vivaldi
- Internetanbindung
-
▼100 MBit
▲40 MBit
<OffTopic>
CreateFile("\\.\PHYSICALDRIVE2")
CreateFile("COM1")
CreateFile("LPT1")
CreateFile("\\.\CDROM0")
...
CreateFile liefert ein Handle auf das jeweilige Gerät. Mit diesem Handle kann man auf das Gerät wie auf eine Datei zugreifen.
</OffTopic>
Kleiner Hinweis: Windows kennt die auch. Beispiele:i_hasser schrieb:aus diesem Posting
Puh, also unter Linux wäre das ein einfaches cat /dev/ttyS[x], und oh Wunder über Wunder, bei DOS (und nur da ) ist es nicht viel schwieriger.
DOS kennt ein paar spezielle Gerätenamen, ähnlich wie /dev bei Linux.
CreateFile("\\.\PHYSICALDRIVE2")
CreateFile("COM1")
CreateFile("LPT1")
CreateFile("\\.\CDROM0")
...
CreateFile liefert ein Handle auf das jeweilige Gerät. Mit diesem Handle kann man auf das Gerät wie auf eine Datei zugreifen.
</OffTopic>
ok, hab das teil jetzt hier vor mir.
es läuft mit MS Dos ROM 3.22 Kernel.
hab jetzt bestimmt 2 stunden einen 16Bit compiler für ein 80386 prozessorgesucht. Hab dann auch einen gefunden ( Digital Mars C/C++ ). Ist aber richtig schwer das ganze immer zu fuß über dos zu machen. kann mir zwar ne bat datei schreiben und mit umgebungsvariablen arbeiten, aber irgendwie ist das nicht das wahre wenn man den borland builder *duck* gewöhnt ist. Habt ihr ne ahnung wie ich den Compiler in Dev-Cpp einbinde oder habt ihr sonst ein Tool mit Editor und bereitgestelltem Compiler und Debugger?
es läuft mit MS Dos ROM 3.22 Kernel.
hab jetzt bestimmt 2 stunden einen 16Bit compiler für ein 80386 prozessorgesucht. Hab dann auch einen gefunden ( Digital Mars C/C++ ). Ist aber richtig schwer das ganze immer zu fuß über dos zu machen. kann mir zwar ne bat datei schreiben und mit umgebungsvariablen arbeiten, aber irgendwie ist das nicht das wahre wenn man den borland builder *duck* gewöhnt ist. Habt ihr ne ahnung wie ich den Compiler in Dev-Cpp einbinde oder habt ihr sonst ein Tool mit Editor und bereitgestelltem Compiler und Debugger?
Hab mir jetzt das Turbo C geladen. Das is ja mal richtig hart (komme mir vor wie bei assembler *g*). Aber ich glaub wenn ich mich daran gewöhnt hab is das um einiges schneller. Nur beim C&P muss ich mich da verdammt umstellen. Hast du ne Ahnung wie ich die iostream.h einbinde? würde ganz gerne cout und cin verwenden. Mir is printf net so geläufig. Falls nicht sag mir mal bitte mit welchem befehl ich eingeben kann. also einen Cin ersatz.
Danke schonmal,
d0x
Danke schonmal,
d0x
- Mitglied seit
- 16.11.2001
- Beiträge
- 21.664
- Renomée
- 1.247
- Standort
- München
- Aktuelle Projekte
- World Community Grid
- Lieblingsprojekt
- Folding@Home
- Meine Systeme
- AMD Ryzen 9 5950X
- BOINC-Statistiken
- Folding@Home-Statistiken
- Prozessor
- AMD Ryzen 9 5950X
- Mainboard
- ASUS TUF Gaming X570-Pro [WI-FI]
- Kühlung
- be quiet! Shadow Rock 3
- Speicher
- 4x 16GB DDR4-3200 Corsair Vengeance LPX
- Grafikprozessor
- ASRock Radeon RX 550 Phantom Gaming Aktiv 2GB
- Display
- LG 27UL850-W, 27"
- SSD
- Samsung 980 PRO 2TB, Samsung 840 EVO 500GB
- HDD
- Seagate Barracuda 7200.14 3TB SATA3
- Optisches Laufwerk
- Samsung SH-S183A SATA schwarz (im externen Gehäuse)
- Gehäuse
- be quiet! Silent Base 802 schwarz
- Netzteil
- be quiet! Straight Power 11 Platinum 550W
- Tastatur
- Logitech G613 Lightspeed
- Maus
- Logitech M510
- Betriebssystem
- Ubuntu Linux 22.04
- Webbrowser
- Vivaldi
- Internetanbindung
-
▼100 MBit
▲40 MBit
Mit scanf.d0x schrieb:aus diesem Posting
Falls nicht sag mir mal bitte mit welchem befehl ich eingeben kann. also einen Cin ersatz.
Danke, habe gerade den fehler gefunden. Der legt standart mäßig eine *.c datei an. So benutzt er auch nur den normalen standart c compiler. Man muss dem sagen das er den c++ compiler benutzen soll. Jetzt nur noch hoffen das es auch mit dem mde so läuft.
Hab mal ne fragezu dem CreateFile. Also ich hab eben mit Cut n Paste mir so n quelltext zusammen geschnitten. Ich komm leider net ganz mit dem ReadFile zurecht. undzwar genau mit "LPOVERLAPPED lpOverlapped". Kann mal einer von euch schauen was damit gemeint ist?
hier die links zu der MSDN Libray. Ich verstehs net
CreateFile:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/createfile.asp
ReadFile:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/readfile.asp
hier die links zu der MSDN Libray. Ich verstehs net
CreateFile:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/createfile.asp
ReadFile:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/readfile.asp
PHP:
#include <conio.h>
#include <windows.h>
#include <stdio.h>
int main()
{
HANDLE hFile;
hFile = CreateFile(TEXT("c:\\COM1"), // file to open
GENERIC_READ, // open for reading
FILE_SHARE_READ, // share for reading
NULL, // default security
OPEN_EXISTING, // existing file only
FILE_FLAG_OVERLAPPED, // normal file
NULL); // no attr. template
if (hFile == INVALID_HANDLE_VALUE)
{
printf("Could not open file (error %d)\n", GetLastError());
return 0;
}
char inBuffer[100];
DWORD nBytesToRead=100;
LPDWORD nBytesRead;
// Attempt a synchronous read operation.
bool bResult = ReadFile(hFile,
&inBuffer,
nBytesToRead,
&nBytesRead,
NULL); //<- hier motzt er. Aber ich versteh das mit dem
// overplapped net.
getch();
return 0;
}
- Mitglied seit
- 16.11.2001
- Beiträge
- 21.664
- Renomée
- 1.247
- Standort
- München
- Aktuelle Projekte
- World Community Grid
- Lieblingsprojekt
- Folding@Home
- Meine Systeme
- AMD Ryzen 9 5950X
- BOINC-Statistiken
- Folding@Home-Statistiken
- Prozessor
- AMD Ryzen 9 5950X
- Mainboard
- ASUS TUF Gaming X570-Pro [WI-FI]
- Kühlung
- be quiet! Shadow Rock 3
- Speicher
- 4x 16GB DDR4-3200 Corsair Vengeance LPX
- Grafikprozessor
- ASRock Radeon RX 550 Phantom Gaming Aktiv 2GB
- Display
- LG 27UL850-W, 27"
- SSD
- Samsung 980 PRO 2TB, Samsung 840 EVO 500GB
- HDD
- Seagate Barracuda 7200.14 3TB SATA3
- Optisches Laufwerk
- Samsung SH-S183A SATA schwarz (im externen Gehäuse)
- Gehäuse
- be quiet! Silent Base 802 schwarz
- Netzteil
- be quiet! Straight Power 11 Platinum 550W
- Tastatur
- Logitech G613 Lightspeed
- Maus
- Logitech M510
- Betriebssystem
- Ubuntu Linux 22.04
- Webbrowser
- Vivaldi
- Internetanbindung
-
▼100 MBit
▲40 MBit
Motzt der Compiler? Eigentlich müsste der Aufruf richtig sein. Du solltest allerdings das FILE_FLAG_OVERLAPPED bei CreateFile() durch 0 ersetzen, denn FILE_FLAG_OVERLAPPED heißt, dass Du asynchron auf die Datei zugreifen willst, was Du ja offenbar nicht vorhast.
Ähnliche Themen
- Antworten
- 13
- Aufrufe
- 3K
- Antworten
- 0
- Aufrufe
- 51K
- Antworten
- 0
- Aufrufe
- 63K
- Antworten
- 27
- Aufrufe
- 7K
- Antworten
- 0
- Aufrufe
- 82K