Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C] leggere da linea di comando

    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) :

    codice:
    #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' ???

  2. #2
    mi pare manca un * davanti a
    codice:
    char * lpCmdLine
    quindi

    codice:
    .., char **lpCmdLine, ..

  3. #3
    no no,

    codice:
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, char * lpCmdLine, int  nCmdShow)
    è giusto

  4. #4
    ho capito che è solo una stringa e non piu di una quindi ho risolto spezzando la stringa passata da linea di comando

    ok fatto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.