Zum Inhalt springen

Manfred.Becker

Mitglieder
  • Gesamte Inhalte

    148
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Manfred.Becker

  1. Hi Verena, also wenn es dir nur um den Integer-Wert geht, dann kannst du das auch direkt zuweisen (ohne subString und strcpy()): int a = atoi(name+1); Viel Spass...
  2. Beziehst du dich auf mein Beispiel? Dort wird auch eine Variable (subString) verwendet. Reicht das nicht?
  3. Hi sternchen_1709, dein subString ist ein char* !!!! Damit kannst du höchstens irgendwohin verweisen. Eine Zeichenkette kannst du damit nicht speichern. Wenn es lediglich um die Zeichenfolge ab dem zweiten Zeichen geht, dann darfst du einfach mit dem +Operator drauf zugreifen. Benötigst du aber wirklich eine eigene Variable, dann muss das ein char-Array sein, das mit Kopierfunktionen befüllt wird. Hier ein paar Beispiele: #include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> int main (void) { const char * name = "1234"; char subString[80]; printf("%d\n",atoi(name)); // Ausgabe: 1234 printf("%d\n",atoi(name+1)); // Ausgabe: 234 strcpy(subString,name+1); printf("%s\n",subString); // Ausgabe 234 strncpy(subString,name+1,2); subString[2]=0; // abschliessendes 0 printf("%s\n",subString); // Ausgabe 23 getch(); return 0; } [/PHP]
  4. Hi, kontrolliere bitte mal dei Eigenschaft InputLen des MSComm-Controls. Die muss unbedingt auf 1 gesetzt sein! Sollte sie grösser 1 sein z.b. 16, dann werden immer nur Blockweise Daten gelesen. Wenns dann einen Rest gibt, kommt's nicht zum OnComm-Ereignis! Hier die abgespeckte OnComm-Funktion: Private Sub comm_scanner_OnComm() Dim BytesLeft As Integer Dim strIn As String Dim scannerstring As String BytesLeft = comm_scanner.InBufferCount scannerstring = "" Do While BytesLeft > 0 strIn = comm_scanner.Input scannerstring = scannerstring & strIn DoEvents BytesLeft = comm_scanner.InBufferCount Loop logfile.WriteLog scannerstring, ".\scannerstring.txt" End Sub [/PHP]
  5. Hi jasso, ich selbst hatte noch mit keinem Betriebsystem jemals Probleme mit VB6 und der Ser. Schnittstelle! Höchstwahrscheinlich ist eine unsaubere Programmierung der OnComm-Funktion die Ursache. Hast du daran gedacht, dass während du Daten aus der seriellen Schnittstelle liest, noch weitere Daten hinzukommen können? Deshalb sollte die OnComm-Funktion etwa so aussehen: Private Sub MSComm1_OnComm() Dim ReceiveData(1024) As Integer Dim BytesLeft As Integer Dim i As Integer Dim nBytes As Integer Dim ch As Byte Dim strIn As String nBytes = 0 BytesLeft = MSComm1.InBufferCount Do While BytesLeft > 0 strIn = MSComm1.Input nBytes = nBytes + 1 If strIn <> "" Then ReceiveData(nBytes) = AscB(strIn) Else ReceiveData(nBytes) = 0 End If DoEvents BytesLeft = MSComm1.InBufferCount Loop ... End Sub [/PHP] Wichtig dabei ist die Do While BytesLeft > 0 Schleife! Poste doch mal deine OnComm-Funktion...
  6. Hi bobzta, mit mget bekommst du nur die Files aus dem angegebenen Ordner kopiert, nicht aber die aus weiteren Unterordnern! Ich glaube dafür gibt's kein spezielles ftp Kommando. Allerdings könntest du es mit dem take-Kommando versuchen: take-Kommando: Durch die Eingabe von >take datei< werden alle FTP-Kommandos, die in datei vorhanden sind, ausgeführt. Auf diese Weise kann eine Stapelanwendung definiert werden. Dieses Kommando eignet sich insbesondere zur Übertragung mehrerer Dateien, falls der Host keine Mehrfachübertragung durch Platzhalter erlaubt (VSP-Rechner). Quelle: ftp-befehle
  7. Hi kills, schau dir mal das hier an: chronicles2000 falls es nicht das ist was du suchst, dann suche hier: www.php-free.de oder hier: Google
  8. Hi OdagTheCrow, also das mit der IP-Änderung wird so nicht funktionieren. Man kann zwar mit ipconfig eine neue IP-Adresse zuweisen lassen, allerdings nur für den gesamten Rechner, aber nicht nur für die DOS-BOX! Es gibt Tools (VMWare bzw. VirtualPC ) die emulieren einen Rechner im Rechner. Willst du vielleicht sowas?
  9. Hi katz_1, natürlich wird dein zweiter Fehler ignoriert, weil du immernoch in der Fehlerbehandlung des ersten Fehlers bist!!! Du must mit Resume arbeiten, sonst wird das nie was! (Meinetwegen auch mit Resume Sprungmarke)
  10. Hi katz_1, was ist denn das für eine Fehlernehandlung (mit GOTO!!!)? Das ist mehr als übel! Ausserdem musst du in der Fehlerbehandlung mit RESUME arbeiten, um weiterzumachen! Hier mal ein Grundgerüst für die Fehlerbehandlung: Private Sub MySub() On Error GoTo ErrorHandler ... Step1: ... Exit Sub ErrorHandler: Dim ErrNumber, ErrDescription ErrNumber = Err.Number ErrDescription = Err.Description Select Case ErrNumber Case ??? Resume Case ??? Resume Next Case ??? Resume Step1 Case Else MsgBox ErrDescription, , "Fehler " & ErrNumber End End Select End Sub [/PHP]
  11. Hi, mal abgesehen davon, dass in der Funktion int teil() die Variable argv nicht übergeben wurde, und dann auch noch falsch eingesetzt ist... ... und selbst wenn man es richtig macht, ist die Zuweisung mit sprintf() so mehr als kritisch! int teil(char* value) { char string1[20]; sprintf(string1, "Hallo %s", value); . . . } [/PHP] Das funktioniert nämlich nur solange keine Zeichenfolge länger 13 Zeichen eingegeben wurde!!!! Ändere das bitte!
  12. Hi Akim79, wie wärs damit? Option Explicit Sub test() Dim row%, column% Dim value For row = 1 To 3 value = Tabelle1.Cells(row, 1) Next row For column = 1 To 3 value = Tabelle1.Cells(1, column) Next column End Sub [/PHP]
  13. Hi, das sagt die F1-Hilfe: CreateProcess The CreateProcess function creates a new process and its primary thread. The new process executes the specified executable file. BOOL CreateProcess( LPCTSTR lpApplicationName, // pointer to name of executable module LPTSTR lpCommandLine, // pointer to command line string LPSECURITY_ATTRIBUTES lpProcessAttributes, // process security attributes LPSECURITY_ATTRIBUTES lpThreadAttributes, // thread security attributes BOOL bInheritHandles, // handle inheritance flag DWORD dwCreationFlags, // creation flags LPVOID lpEnvironment, // pointer to new environment block LPCTSTR lpCurrentDirectory, // pointer to current directory name LPSTARTUPINFO lpStartupInfo, // pointer to STARTUPINFO LPPROCESS_INFORMATION lpProcessInformation // pointer to PROCESS_INFORMATION ); [/PHP] Der Inhalt von lpCommandLine ist typischerweise: "test.exe" "c:\\program files\\test.exe" ".\\weiterer ordner\\test.exe"
  14. Hi Mahanaga, warum funktioniert das mit dem MS Loopback Adapter nicht?
  15. ...wer lesen kann ist klar im Vorteil trotzdem, keine Ursache
  16. Hi, in diesem fall musst du umschliessende Hochkommas verwenden: MP3Filename = Chr(34) & "c:\test mit langem namen.mp3" & Chr(34) [/PHP]
  17. Hi, zu VB.NET und MP3 findest du hier ein paar Infos: MP3-Titelinformationen mit .NET auslesen mciSendString-API
  18. es geht aber auch einfacher: Changing the Background Color of an Edit Control oder: Changing the Background Color of Edit Controls
  19. Hi, schau dir mal das an: CNewLabel : Advanced CStatic-Derived Class
  20. alles perfekt! Das mit dem Starten funktioniert allerdings auch nur dann, wenn du die im Programmers Notepad die Datei geöffnet hast, die vom Namen her genauso heist wie die exe! Bsp: Modul "Hello.cpp" EXE-Datei: "HELLO.EXE" Und die Exe Datei muss sich im gleichen Verzeichnis befinden wie das Modul. Wenns jetzt immer noch nicht geht, dann weis ich auch nicht weiter! (PS.: Ich hab die Version 2.05.48)
  21. Oh, jetzt bin ich wohl zu spät dran. :beagolisc Aber das hier hatte ich gerade fertig: Const ANZVALUES = 6 Private Sub CommandButton1_Click() Dim rowIndex%, colIndex%, index%, i% Dim itemName$ Dim zufall% Dim zArray(ANZVALUES) As Integer rowIndex = 1 'Startzeile (bitte anpassen!)' colIndex = 2 'Startreihe (bitte anpassen!)' Randomize Timer For i = 0 To ANZVALUES - 1 zArray(i) = -1 'Werte initialisieren' Next i For index = 0 To ANZVALUES - 1 Do zufall = Rnd(1) * 5 'Zufallswerte 0 bis 5' For i = 0 To ANZVALUES - 1 If zufall = zArray(i) Then zufall = -1 Exit For End If Next i Loop While zufall < 0 zArray(index) = zufall 'Zufallswert merken' itemName = "TextBox" & index + 1 UserForm1.Controls.Item(itemName).Text = Tabelle1.Cells(rowIndex + zufall, colIndex) Next index End Sub [/PHP] vielleicht bringt's ja noch was...
  22. Hi, entweder du hast eine falsche Angabe beimTool Property Command gemacht, oder deine Batch hat kein pause-Befehl am Ende. Wetten?
  23. nein brauchst du nicht! bei mir tut's doch auch. Hast du bei der Option Console I/O: Capture output auch wirklich den Haken rausgenommen, wie ich empfohlen hatte? Solange dort ein Haken sitzt, gibts auch keine Ausgabe! Und verwendest du die Version 2? Nur mit der funktionierts. Übrigens setze mal in der DOS-Box 'nen cmd Befehl ab. Was passiert? Augenscheinlich nichts. Aber in Wahrheit wird ein weiterer cmd-Prozess im Hintergrund gestartet (siehe Task Manager). Und du must zweimal exit eingeben, um die DOS-Box zu verlassen.
  24. Hi Scorpio, das hier hilft dir weiter: Starten eines beliebigen Programmes als Service unter Windows NT/2000/XP
  25. Ist das eine Hardware- oder Softwarefrage?

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...