PDA

Visualizza la versione completa : [C] leggere da linea di comando


TestaDiMucca
07-05-2004, 17:10
ho scritto un prog che verifica l'esistenza di un file passato via linea di comando..e siccome lo devo fare anche con la SECONDA stringa passata via parametro, devo utilizzare [1] e [2].. (DEVO usare WINAPI WinMain perch deve essere un applicazione nascosta) :



#include <stdio.h>
#include <stdlib.h>
#include <windows.h>


int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, char * lpCmdLine, int nCmdShow)

{
WIN32_FIND_DATA FindFileData;
HANDLE hFind;
HANDLE Find;

hFind = FindFirstFile(lpCmdLine[1], &FindFileData);
if (hFind == INVALID_HANDLE_VALUE)
printf("NO\n");
else
printf ("YES\n");

system("PAUSE");
return 0;
}


E mi da come errore :
13 C:\Programmi\Dev-Cpp\Progetti\Parametro\main.c
[Warning] passing arg 1 of `FindFirstFileA' makes pointer from integer without a cast

E mi crusha in fase di esecuzione...


MA PERCHE' ??? :cry: :dott:

Michele Facchin
07-05-2004, 17:24
mi pare manca un * davanti a


char * lpCmdLine


quindi



.., char **lpCmdLine, ..

TestaDiMucca
07-05-2004, 17:28
no no,


int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, char * lpCmdLine, int nCmdShow)

giusto :dh:

TestaDiMucca
07-05-2004, 17:39
ho capito che solo una stringa e non piu di una quindi ho risolto spezzando la stringa passata da linea di comando ;)

ok fatto :D

Loading