Visual Basic: Zeichen ersetzen
Nico
- programmiertechnik
Hi Ihrz!
Ich bin dabei, in Visual Basic 5.0 ein Programm zu schreiben, bei dem ich in dem Teil der Registry, der den automatischen Start bei Windows verursacht, einen Eintrag vornehmen muss, der das Programm startet, also in dem hier:
HKEY_LOCAL_MACHINE\Software\Microsoft\CurrentVersion\RunServices
Dazu muss ich aber aus dem Pfad CurDir$ alle \ 's in \ 's verwandeln. Mit folgender Routine kann ich ein Zeichen verwandeln, aber keine zwei:
f = CurDir$
for i=1 to len(f)
if mid$(f, i, 1) = "" then
mid$(f, i, 1) = "*"
end if
Wenn ich anstatt dem zweiten mid$(f, i, 1) bei der 1 eine 2 einsetze, bringt das nur Blödsinn. Gibt es noch einen anderen Weg?
Hi Ihrz!
Ich bin dabei, in Visual Basic 5.0 ein Programm zu schreiben, bei dem ich in dem Teil der Registry, der den automatischen Start bei Windows verursacht, einen Eintrag vornehmen muss, der das Programm startet, also in dem hier:
HKEY_LOCAL_MACHINE\Software\Microsoft\CurrentVersion\RunServices
Dazu muss ich aber aus dem Pfad CurDir$ alle \ 's in \ 's verwandeln. Mit folgender Routine kann ich ein Zeichen verwandeln, aber keine zwei:
f = CurDir$
for i=1 to len(f)
if mid$(f, i, 1) = "" then
mid$(f, i, 1) = "*"
end ifWenn ich anstatt dem zweiten mid$(f, i, 1) bei der 1 eine 2 einsetze, bringt das nur Blödsinn. Gibt es noch einen anderen Weg?
Hallo,
StringNeu = Replace(StringAlt, "Zeichenalt", "Zeichenneu")
Tschau, Stefan
Hi Nico,
HKEY_LOCAL_MACHINE\Software\Microsoft\CurrentVersion\RunServices
Dazu muss ich aber aus dem Pfad CurDir$ alle \ 's in \ 's verwandeln. Mit folgender Routine kann ich ein Zeichen verwandeln, aber keine zwei:
eine Möglichkeit hat dir Stefan ja schon gesagt, aber meine Frage wäre: warum? Ich muss das in C/C++ machen, weil in der Sprache der Backslash ein Escape-Zeichen ist, wodurch der Compiler das nächste Zeichen anders interpretiert. Aber VB kennt doch sowas nicht?
Ich vermute mal du versuchst ein C-Beispiel für eine API-Funktion in VB umzusetzen. Liege ich da richtig?
Gruss,
Martin