ERLEDIGT
JA
JA
ANTWORTEN
20
20
ZUGRIFFE
1137
1137
EMPFEHLEN
-
Das bekomme als fehler bei starten Ausführen von ioblink.exe D:\SDK\Samples\Simple IO\C\ioblink.cpp(76) : warning C4101: 'relnum' : Unreferenzierte lokale Variable
Linker-Vorgang läuft...
LINK : fatal error LNK1104: Datei "Release/ioblink.exe" kann nicht geoeffnet werden
Fehler beim Ausführen von link.exe.
Browse-Informationsdatei wird erstellt...
ioblink.exe - 1 Fehler, 1 Warnung(en)
wenn stare ich dise exe unter DOS dieses Ausführen einfach haltet (läuft bis ..) auf einem Platz und dann ich nichts machen. Ok vermute ich der fehler ist bei mir in Code, aber warum das ist auch so beim originalen Programm. Das kann ich nicht verstehen?
-
meine exe ist im Ordner Release
-
23.06.05 18:19 #18
- Registriert seit
- Apr 2002
- Ort
- Delmenhorst (Niedersachsen)
- Beiträge
- 3.567
moin
Guck mal ob die Datei noch offen ist, im Taskmanager.
mfg
umbrasaxum
-
nach einem Restart alles läuft, aber ich habe Problem mit diesen Datentypen int und ulong.
Im Beispielprogramm gibt es einen Method, der in class Datei beschrieben ist. Wenn ich mochte eine neue Variable erstellen (ich weis nicht ob das darf), aber wo muss ich diese deklarieren:? in .class, in main, oder im Method, der inm Anfag meines Programm ist?
-
23.06.05 19:43 #20
- Registriert seit
- Apr 2002
- Ort
- Delmenhorst (Niedersachsen)
- Beiträge
- 3.567
moin
In der Klasse solltest du nichts mehr erstellen!
Zeig mal den Code ausschnitt, wo du diese Methode aufrufst, der du ein int übergeben willst.
mfg
umbrasaxum
-
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
#include "stdafx.h" #include "time.h" #include "iowkit.h" // Write simple value BOOLEAN [B]WriteSimple(IOWKIT_HANDLE devHandle, DWORD value)[/B] { IOWKIT_REPORT rep; //int portnr; //printf("value ist %d, port ist %d\n",value,portnr); // Init report rep.ReportID = 0; rep.Value = 0xFFFFFFFF; //00000000; switch (IowKitGetProductId(devHandle)) { // Write simple value to IOW40 case IOWKIT_PRODUCT_ID_IOW40: rep.Bytes[portnr] = (UCHAR) value; return IowKitWrite(devHandle, IOW_PIPE_IO_PINS, (PCHAR) &rep, IOWKIT40_IO_REPORT_SIZE) == IOWKIT40_IO_REPORT_SIZE; // Write simple value to IOW24 case IOWKIT_PRODUCT_ID_IOW24: rep.Bytes[3] = (UCHAR) value; return IowKitWrite(devHandle, IOW_PIPE_IO_PINS, (PCHAR) &rep, IOWKIT24_IO_REPORT_SIZE) == IOWKIT24_IO_REPORT_SIZE; default: return FALSE; } } int main(int argc, char* argv[]); int main(int argc, char* argv[]) { IOWKIT_HANDLE iows[IOWKIT_MAX_DEVICES]; int i, j, fnum, relnum,portnr; ULONG bits; int numIows; IOWKIT_REPORT rep; WCHAR sn[9]; BOOLEAN rc; DWORD pid; IOWKIT_HANDLE devHandle; //eingefügt zum Lesen von argc und argv printf("argc ist %d\n", argc); if (argc>0) { for (i=0;i<=argc-1;i++) { printf("argv[%d] ist %s\n",i,argv[i]); } } if (argc==3) { fnum=atoi(argv[1]); portnr=atoi(argv[2]); printf ("Fehlernummer ist %d\n",fnum); printf ("device ist %d\n",portnr); } else {portnr=0; printf("Portnummer wurde auf 0 gesetzt!\n"); } // Open device ......................... ...................... // Init report // Report ID 0 is for writing to 32 input/output pins rep.ReportID = 0; printf("Blinking LEDs...\n"); //srand(time(NULL)); // Blinking' for (i = 0; i < 12; i++) { //bits = rand(); // Make every IOW blink for (j = 0; j < numIows; j++) { // Write to simple endpoint //rc = WriteSimple(iows[j], fnum); printf("."); [B]rc = WriteSimple(iows[j], fnum); //, portnr[/B] // Check for error if (!rc) printf("Cannot write, err %d\n", GetLastError()); } // Sleep for 25ms Sleep(2500); } printf("\nBlinking complete\n"); // Set LEDs off for (i = 0; i < numIows; i++) // Write to simple endpoint WriteSimple(iows[i], 0xFFFFFFFF); for(i = 0; i < 10; i++) { // Read immediate rc = IowKitReadImmediate(iows[0], &bits); //rc = IowKitReadImmediate(iows[0], [B]&fnum[/B]); printf("%d) ReadImm(): rc=%d bits=%x\n", i, rc, bits); //printf("%d) ReadImm(): rc=%d fnum=%x\n", i, rc, fnum); Sleep(100); } // Close device IowKitCloseDevice(devHandle); out: return 0; }
OK, ich möchte in diese WriteSimple endpoints statt DWORD value --fnum schreiben, auch portnr (portnummer) auch int. Aber diese Funktion ist so deklariert, dass ich darf nur eine Wert schreiben. Diese fnum muss ich übertragen und auf meine Release schreiben(steuern) und dann dieser geschriebene Wert auf Ausgang lesen mit ReadImm.Diese ReadImm liest letzte Zustand.Damit ich sehe, was habe ich geschrieben, gibt se Lichtdioden, aber auf anderem Portnummer, deshalb brauche ich auch diese portnr.
Ich hoffe, dass ich meine Aufgabe gut erklärt habe.
Wenn du kannst etwas raten, werde ich freuen.
Danke noch einmal
Ähnliche Themen
-
Suche VBA Programmierer für Umwandlung VBS nach VBA
Von Drohne im Forum Stellenangebote (unentgeltlich)Antworten: 3Letzter Beitrag: 24.09.10, 12:17 -
Farbraum-Umwandlung von sRGB nach Lab
Von Nasenbaer im Forum JavaAntworten: 2Letzter Beitrag: 02.04.09, 13:37 -
Umwandlung von string nach char
Von sunmania im Forum C/C++Antworten: 2Letzter Beitrag: 25.12.07, 14:23 -
Problem bei der Umwandlung von RGB nach HexaDezimal
Von rueD im Forum VisualStudio & MFCAntworten: 5Letzter Beitrag: 07.11.07, 12:29 -
Umwandlung von RGB Modus nach CMYK
Von oaki im Forum PhotoshopAntworten: 6Letzter Beitrag: 25.08.06, 12:38





Zitieren
Login






