Utilitaire pour création d'un fusion drive sur mac mountain lion
Bonjour,
Je débute en programmation et je me suis lancé dans la création d'une petite appli qui créera le fusion drive avec le minimum d'intervention de l'utilisateur, et là je suis un peu coincé...
voici :
//
// main.c
// Fusion Drive Creator 1.0
//
// Created by MacBook on 09/04/13.
// Copyright (c) 2013 Stef. All rights reserved.
//
#include <stdio.h>
int main(int argc, const char * argv[])
{
// Création d'une application pour la réalisation d'un fusion drive sur mac
// Identifier les disques à utiliser : diskutil list
// Création du corestorage : dsikutil cs create test1 disk"x" disk"y"
// Trouver l'UUID de l'énsemble : diskutil cs list (récupérer la valeur qui suit "Logical Volume Group"
// Création du Fusion drive : diskutil coreStorage createVolume "xxxxxxxx-xxxx-xxxx-xxxxx-xxxxxxxxxxxx" jhfs+ FusionDrive 100%
// Fini
system("diskutil list");
int disk1;
printf("Numéro du Premier Disque ?\n");
scanf("%d", &disk1);
printf("disk%d\n", disk1);
int disk2;
printf("Numéro du Deuxième Disque ?\n");
scanf("%d", &disk2);
printf("disk%d\n", disk2);
printf("Les numéros des Disques sont-ils corrects ?\n");
printf("1=oui, 0=non\n");
int reponse;
scanf("%d", &reponse);
printf("%d\n", reponse);
if (reponse == 1)
printf("Ok on y va\n");
else
printf("Redémarrez le programme");
printf("Les disques qui seront fusionnés :");
printf(" Disk%d et", disk1);
printf(" Disk%d", disk2);
return 0;
}k2);
L
Réponses
Bonjour,
justement la fonction "system()" devrait fonctionner (il faut inclure stdlib.h). Mais tu peux aussi utiliser la classe NSTask du FondationKit avec lequel tu peux avoir un contrôle plus "fin".
Ouh la... je te l'ai dit je suis débutant... la fonction system() en tout cas comme je l'ai écrite ne fonctionne pas... pour ce qui est du reste de tes conseils ça dépasse de loin le cadre de mes compétences... ne tapez pas...
La fonction "system" fonctionne. C'est peut-être les paramètres passés à diskutil qui posent problèmes ?
Je me suis mal exprimé.
la commande : system("diskutil list"); fonctionne bien, pas de souci...
J'ai juste un problème avec une nouvelle commande que je n'arrive pas à faire fonctionner, elle doit me permettre de créer le corestorage :
diskutil cs create test1 disk"x" disk"y"
à la place de "x" et "y" je voudrais mettre les valeurs déclarées pour "disk1" et "disk2" :
diskutil cs create test1 disk"disk1" disk"disk2"
C'est là que ça coince en fait...
En tout cas merci pour les réponses.
Ton code est un code pur C, en ligne de commande, sans interface graphique et qui n'utilise nullement Cocoa.
C'est très bien, ça marche très bien y'a pas de soucis. Mais ici on code plutôt en l'Objective-C (qui, en pratique est une surcouche du C) et avec le framework Cocoa.
Du coup faut qu'on sache vers quoi tu t'orientes :
Dans l'immédiat et comme je débute je vais rester sur du C, histoire de faire au moins ce petit bout de programme...
Si j'arrive à le faire fonctionner, je pense en faire une appli avec une belle fenêtre...
La tout de suite je galère un peu...