Code: Alles auswählen
device.s = "Computer.Domain"
Habe RTrim, RemoveString und Trim probiert, komme damit aber nicht zum gewünschten Ziel.
Wie kann ich das realisieren?
Code: Alles auswählen
device.s = "Computer.Domain"
Ich möchte .Domain entfernen.RSBasic hat geschrieben:Kannst du bitte deinen RTrim-Code posten, der nicht funktioniert?
Du sagst leider auch nicht, welche Zeichen entfernt werden sollen. Willst du "Computer" entfernen oder alle Zeichen (beliebige Zeichen) bis zum Punkt-Zeichen?
Code: Alles auswählen
RTrim(Computername(), ".")
Code: Alles auswählen
EnableExplicit
Define device.s = "Computer.Domain"
Debug StringField(device, 1, ".")
Code: Alles auswählen
EnableExplicit
Define device.s = "Computer.Domain"
Debug Mid(device, 1, Len(device)-FindString(ReverseString(device), "."))
Äh, lies dir bitte die Anleitung durch.thinkitsimple hat geschrieben:Ich möchte .Domain entfernen.
Ich habe folgendes probiert:Damit wird aber nur der Punkt entfernt. Ich möchte aber alles ab dem Punkt nach rechts entfernen.Code: Alles auswählen
RTrim(Computername(), ".")
Das klappt. Prima. Ja, der String hat immer nur einen Punkt.RSBasic hat geschrieben:Ist dieser String immer gleich? Also immer nur mit einem Punkt? Wenn ja, dann kannst du mit StringField() arbeiten:Code: Alles auswählen
EnableExplicit Define device.s = "Computer.Domain" Debug StringField(device, 1, ".")
Code: Alles auswählen
RunProgram("curl\i386\curl.exe", "https://dweet.io/dweet/for/" + device.s + "?hello=world", GetCurrentDirectory(), #PB_Program_Hide)
Code: Alles auswählen
RunProgram("curl", "https://dweet.io/dweet/for/" + device.s + "?hello=world", GetCurrentDirectory(), #PB_Program_Hide)
Code: Alles auswählen
RunProgram("curl", "https://dweet.io/dweet/for/MeinDevice?hello=world", GetCurrentDirectory(), #PB_Program_Hide)
Code: Alles auswählen
EnableExplicit
Define myUniqueName.s
Define *Buffer, Size
InitNetwork()
myUniqueName.s = "PeterLovesPureBasic"
ReceiveHTTPMemory("https://dweet.io/dweet/for/" + myUniqueName + "?Hello=PureBasic&Timestamp=" + Str(Date()))
*Buffer = ReceiveHTTPMemory("https://dweet.io/get/latest/dweet/for/" + myUniqueName)
If *Buffer
Size = MemorySize(*Buffer)
Debug "Content: " + PeekS(*Buffer, Size, #PB_UTF8 | #PB_ByteLength)
FreeMemory(*Buffer)
Else
Debug "Failed"
EndIf
Unter bestimmten Umständen (die mir nicht bekannt sind) ist das auch unter Windows so.thinkitsimple hat geschrieben:Neues Problem:
Das klappt unter Windows:
Unter macOS klappt das nur, wenn ich den Parameter für RunProgram nicht dynamisch erzeuge.Code: Alles auswählen
RunProgram("curl\i386\curl.exe", "https://dweet.io/dweet/for/" + device.s + "?hello=world", GetCurrentDirectory(), #PB_Program_Hide)
1. Beispiel (klappt nicht):
2. Beispiel (klappt):Code: Alles auswählen
RunProgram("curl", "https://dweet.io/dweet/for/" + device.s + "?hello=world", GetCurrentDirectory(), #PB_Program_Hide)
Eine Idee, warum das unter macOS nicht klappt?Code: Alles auswählen
RunProgram("curl", "https://dweet.io/dweet/for/MeinDevice?hello=world", GetCurrentDirectory(), #PB_Program_Hide)
Danke. Das war es. Im Computernamen gab es einen Bindestrich, das mochte macOS offensichtlich nicht.Kiffi hat geschrieben: Ansonsten mal schauen, was bei Dir in 'device.s' steht. Könnte sein, dass da ein Sonderzeichen drinsteht.
Grüße ... Peter
Code: Alles auswählen
; sends some device informations to dweet.io
; read last message from your device on https://dweet.io/get/latest/for/your_device_name
; read all messages from your device on https://dweet.io/get/dweets/for/your_device_name
device.s = StringField(ComputerName(), 1, ".") ; remove everything after computername eg .domain
device.s = RemoveString(device.s, "-") ; remove hyphen (-)
device.s = UCase(device.s) ; convert device.s to uppercase
cURLParam.s = "https://dweet.io/dweet/for/" + device.s + "?hello=world"
Debug(device.s)
Debug(cURLParam.s)
CompilerSelect #PB_Compiler_OS
CompilerCase #PB_OS_Windows
RunProgram("curl\i386\curl.exe", cURLParam.s, GetCurrentDirectory(), #PB_Program_Hide)
CompilerCase #PB_OS_MacOS
RunProgram("curl", cURLParam.s, GetCurrentDirectory(), #PB_Program_Hide)
CompilerEndSelect