Hola
He creado una función en c, lo que hace es crear un archivo .vcf archivos de contactos que llevan los dispositivos móviles, pero me encuentro con el problema de como pasarla a una función de harbour y llamarla desde fivewin.
A la función se le pasan tres parametros vCard(n_contactos,datos,n_archivo);
El número de contactos, un array con los datos y el nombre del archivo.
Un saludo y gracias
Gabriel
Aqui el código:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
const int n_contactos=2;
//Variables
const char *datos[10][10]={{"javier","ruiz","garcia" ,"Buenavista","9","633950123","jjfrafive@fgsg.com","Granada"},{"Gabriel","Ruiz","Baena" ,"Barrio Alto","9","634565431","info@fgsg.com","Granada"}};
char n_archivo[80]="contactos";
//LLamamos a la función
vCard(n_contactos,datos,n_archivo);
}
void vCard(int n_contactos, char *datos[][8],char n_archivo[]){
char extension[] = ".vcf";
char completo[80] = "";
int i;
//Concatenar cadenas para añadir extension .vcf
strcat(completo, n_archivo);
strcat(completo, extension);
//Creacion archivo
FILE *vcard;
vcard = fopen(completo,"wt");
for (i=0;i<n_contactos;i++){
//Datos del contacto
//Leer de cada contacto en la base de datos
//Creación archivo
fprintf(vcard, "BEGIN:VCARD \n");/*Escribimos en el archivo*/
fprintf(vcard, "VERSION:2.1 \n");
fprintf(vcard, "N:");
fprintf(vcard, datos[i][1]);
fprintf(vcard, " ");
fprintf(vcard, datos[i][2]);
fprintf(vcard, ";");
fprintf(vcard, datos[i][0]);
fprintf(vcard, "\nFN:");
fprintf(vcard, datos[i][0]);
fprintf(vcard, " ");
fprintf(vcard, datos[i][1]);
fprintf(vcard, " ");
fprintf(vcard, datos[i][2]);
fprintf(vcard, "\nTEL;CELL:");
fprintf(vcard, datos[i][5]);
fprintf(vcard, "\nADR;WORK;CHARSET=ISO-8859-1;LANGUAGE=es-ES:;;C/");
fprintf(vcard, datos[i][3]);
fprintf(vcard, ",");
fprintf(vcard, datos[i][4]);
fprintf(vcard, ";");
fprintf(vcard, datos[i][7]);
fprintf(vcard,"\nEMAIL:");
fprintf(vcard, datos[i][6]);
fprintf(vcard, "\nEND:VCARD\n\n");
}
}