Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum
>
Entwickler
>
Xcode - system() Befehl mit Variable füttern
Xcode - system() Befehl mit Variable füttern
michimaier
08.12.13
19:11
Hi miteinander,
das Problem ist sehr einfach - ich finde bei google allerdings nicht den passenden Suchbegriff - und brauche - HILFE
der "system()" - Befehl feuert shell commands ab.
Also wenn ich sage:
system( say yeah );
wird der Befehl "say yeah" in der shell ausgeführt ( hoffe das ist so richtig ausgedrückt )
Ich bräuchte aber in etwa folgendes:
NSString *string = @"say yeah";
system( string );
Allerdings akzeptiert der system() - Befehl nicht die Variable NSString.
Jemand eine Idee wie ich einen NSString in einen lesbare Variable für den System Befehl umwandle?
Schonmal vielen Dank im voraus!
Hilfreich?
0
Kommentare
stefan
08.12.13
19:28
Hilfreich?
0
michimaier
08.12.13
19:30
soso
Keine Ahnung wo ich da das richtige finde
Danke dir trotzdem
Hilfreich?
0
and3rs
08.12.13
20:00
Laut
verwendet system() kein NSString sondern C-Strings (char*).
Daher müsste der Aufruf mit system([string UTF8String]) zu bewerkstelligen sein.
(UTF8String wandelt den NSString in einen char* mit UTF8 Encoding um)
Hilfreich?
0
dreyfus
08.12.13
20:08
So wie @@and3rs es sagt ist es richtig. Abstrakt geht das:
NSString *foo = @"your text here";
const char *bar = [foo UTF8String];
Allerdings gibt es (und das sprengt hier den Rahmen, Diskussionen dazu finden sich etliche) Gründe, "system()" lieber nicht zu verwenden. NSTask ist in den meisten Fällen der bessere Ansatz.
Hilfreich?
0
ExMacRabbitPro
08.12.13
20:08
Bleib doch in der ObjC Welt! Schau dir mal NSTask an.
Hilfreich?
0
michimaier
08.12.13
20:36
@and3rs & Dreyfus:
http://www.youtube.com/watch?v=UMRo5XCKddQ
Vielen Dank
@ExMacRabbitPro:
Wahrscheinlich ist deine Herangehensweise die bessere,
aber ich benötige echt nur einen quickfix.
und bevor ich da rum suche - nehme ich einfach die Lösung her.
Ja die Diskussion über system() kenn ich - aber für diesen einfachen Fall - reicht das völlig aus
THX miteinander!
Hilfreich?
0
Marcel Bresink
08.12.13
20:42
system( say yeah );
Wobei das für diese konkrete Problemstellung viel zu kompliziert ist. Die korrekte Vorgehensweise wäre eher etwas wie
NSSpeechSynthesizer *synth;
synth = [[NSSpeechSynthesizer alloc] init];
[synth startSpeakingString: @"yeah"];
Mit Xcode hat das Ganze nichts zu tun. Das ist ja nur ein grafisches Hilfsmittel, um das Programm einzugeben und zu übersetzen.
Hilfreich?
0
iCode
09.12.13
12:10
Das ist wie ein sh fork, aber mit den Privilegien deiner Anwendung. Hoffentlich schießt Du damit keinen Bock.
Hilfreich?
0
michimaier
11.12.13
21:19
ähm ja...
Der Befehl heisst nicht wirklich "say yeah"....
es sind ein paar Terminal Befehle die ich abschiesse -
dennoch danke für den Tipp
Hilfreich?
0
Kommentieren
Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.
iPod-Vater Tony Fadell wollte Sonos kaufen – St...
Mac-Wartung: Alte Kernel-Erweiterungen entfernen
Kurz: Trump unterstützt Musk als TikTok-Besitze...
Parallels führt x86-Windows auf M-Macs aus – Te...
Vor 18 Jahren: iPhone, Apple TV und "Apple Inc."
Erscheint das neue MacBook Air M4 früher als an...
Test: eversolo DMP-A10
UltraFine 6K: LG möchte Apple mit neuem 32-Zoll...