Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    225

    catturare su file l' output di un programma

    Ciao a tutti,

    il cruccio è questo..... ho una usb pen che misura la temperatura http://usb.brando.com/prod_detail.php?prod_id=00381 con il software in C che viene eseguito da console
    ...............
    codice:
    sending bytes 0, 0, 0, 0, 0, 0, 0, 0 
    sending bytes 10, 11, 12, 13, 0, 0, 1, 0 
    temperature 84.20F 29.00C
    ...............
    vorrei catturare l'ultimo output della riga relativa alla temperatura su un file di testo, in modo tale poterlo elaborare e in futuro tramite bash fargli inviare un sms se la temperatura supera un certo valore.

    Ho provato con varie sintassi :
    ./prog > file.log
    ./prog >> file.log
    ./prog 2> file.log
    ./prog 2>&1 file.log
    ovviamente i vari tentativi da niubbo preso dalla disperazione che era convinto che fosse sufficiente un banale > .....

    avete qualche idea illuminante che mi possa sbloccare da questa situazione ??

    GRAZIE A TUTTI
    sat

  2. #2
    Puoi scrivere uno scriptino bash come questo:
    codice:
    ./prog > temp
    tail temp --lines=1 >> file.log
    Experience is what you get when you don’t get what you want

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    225
    grazie Xaratroom ma a me non funziona.... mi rimane fermo in console senza visualizzare niente e tnatomene scrivere sul file

    TNX AGAIN

  4. #4
    Ma il programmino (prog) termina ?

    EDIT: se hai il codice c, e se la licenza è GNU (o simile) possiamo risolvere in modo più elegante.
    Experience is what you get when you don’t get what you want

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    225
    no devo usare crtl+c per terminarlo

  6. #6
    Hai il codice del programma ?
    Experience is what you get when you don’t get what you want

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    225
    si eccolo .....

    temper.c
    Codice PHP:
    #include <stdio.h>
    #include <string.h>
    #include <usb.h>
    #include <errno.h>
    #include "temper.h"

    #define VENDOR_ID  0x1130
    #define PRODUCT_ID 0x660c

    struct Temper {
        
    struct usb_device *device;
        
    usb_dev_handle *handle;
        
    int debug;
        
    int timeout;
    };

    Temper *
    TemperCreate(struct usb_device *devint timeoutint debug)
    {
        
    Temper *t;
        
    int ret;

        
    calloc(1sizeof(*t));
        
    t->device dev;
        
    t->debug debug;
        
    t->timeout timeout;
        
    t->handle usb_open(t->device);
        if(!
    t->handle) {
            
    free(t);
            return 
    NULL;
        }
        if(
    t->debug) {
            
    printf("Trying to detach kernel driver\n");
        }

        
    ret usb_detach_kernel_driver_np(t->handle0);
        if(
    ret) {
            if(
    errno == ENODATA) {
                if(
    t->debug) {
                    
    printf("Device already detached\n");
                }
            } else {
                if(
    t->debug) {
                    
    printf("Detach failed: %s[%d]\n",
                           
    strerror(errno), errno);
                    
    printf("Continuing anyway\n");
                }
            }
        } else {
            if(
    t->debug) {
                
    printf("detach successful\n");
            }
        }
        
    ret usb_detach_kernel_driver_np(t->handle1);
        if(
    ret) {
            if(
    errno == ENODATA) {
                if(
    t->debug)
                    
    printf("Device already detached\n");
            } else {
                if(
    t->debug) {
                    
    printf("Detach failed: %s[%d]\n",
                           
    strerror(errno), errno);
                    
    printf("Continuing anyway\n");
                }
            }
        } else {
            if(
    t->debug) {
                
    printf("detach successful\n");
            }
        }

        if(
    usb_set_configuration(t->handle1) < ||
           
    usb_claim_interface(t->handle0) < ||
           
    usb_claim_interface(t->handle1)) {
            
    usb_close(t->handle);
            
    free(t);
            return 
    NULL;
        }
        return 
    t;
    }

    Temper *
    TemperCreateFromDeviceNumber(int deviceNumint timeoutint debug)
    {
        
    struct usb_bus *bus;
        
    int n;

        
    0;
        for(
    bus=usb_get_busses(); busbus=bus->next) {
            
    struct usb_device *dev;

            for(
    dev=bus->devicesdevdev=dev->next) {
            if(
    debug) {
                
    printf("Found device: %04x:%04x\n",
                       
    dev->descriptor.idVendor,
                       
    dev->descriptor.idProduct);
            }
            if(
    dev->descriptor.idVendor == VENDOR_ID &&
               
    dev->descriptor.idProduct == PRODUCT_ID) {
                if(
    debug) {
                    
    printf("Found deviceNum %d\n"n);
                }
                if(
    == deviceNum) {
                    return 
    TemperCreate(devtimeoutdebug);
                }
                
    n++;
            }
            }
        }
        return 
    NULL;
    }

    void
    TemperFree
    (Temper *t)
    {
        if(
    t) {
            if(
    t->handle) {
                
    usb_close(t->handle);
            }
            
    free(t);
        }
    }

    static 
    int
    TemperSendCommand
    (Temper *tint aint bint cint dint eint fint gint h)
    {
        
    unsigned char buf[32];
        
    int ret;

        
    bzero(buf32);
        
    buf[0] = a;
        
    buf[1] = b;
        
    buf[2] = c;
        
    buf[3] = d;
        
    buf[4] = e;
        
    buf[5] = f;
        
    buf[6] = g;
        
    buf[7] = h;

        if(
    t->debug) {
            
    printf("sending bytes %d, %d, %d, %d, %d, %d, %d, %d\n",
                   
    abcdefgh);
        }

        
    ret usb_control_msg(t->handle0x2190x2000x01,
                    (
    char *) buf32t->timeout);
        if(
    ret != 32) {
            
    perror("usb_control_msg failed");
            return -
    1;
        }
        return 
    0;
    }

    static 
    int
    TemperGetData
    (Temper *tchar *bufint len)
    {
        
    int ret;

        return 
    usb_control_msg(t->handle0xa110x3000x01,
                    (
    char *) buflent->timeout);
    }

    int
    TemperGetTemperatureInC
    (Temper *tfloat *tempC)
    {
        
    char buf[256];
        
    int rettemperaturei;

        
    TemperSendCommand(t101112130020);
        
    TemperSendCommand(t0x540000000);
        for(
    07i++) {
            
    TemperSendCommand(t00000000);
        }
        
    TemperSendCommand(t101112130010);
        
    ret TemperGetData(tbuf256);
        if(
    ret 2) {
            return -
    1;
        }

        
    temperature = (buf[1] & 0xFF) + (buf[0] << 8);    
        
    temperature += 1152;            // calibration value
        
    *tempC temperature * (125.0 32000.0);
        return 
    0;
    }

    int
    TemperGetOtherStuff
    (Temper *tchar *bufint length)
    {
        
    TemperSendCommand(t101112130020);
        
    TemperSendCommand(t0x520000000);
        
    TemperSendCommand(t101112130010);
        return 
    TemperGetData(tbuflength);
    }


    #ifdef UNIT_TEST

    #define USB_TIMEOUT 1000    /* milliseconds */

    int
    main
    (void)
    {
        
    Temper *t;
        
    char buf[256];
        
    int iret;

        
    usb_set_debug(0);
        
    usb_init();
        
    usb_find_busses();
        
    usb_find_devices();

        
    TemperCreateFromDeviceNumber(0USB_TIMEOUT1);
        if(!
    t) {
            
    perror("TemperCreate");
            exit(-
    1);
        }

    /*
        TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0);
        TemperSendCommand(t, 0x43, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
    */

        
    bzero(buf256);
        
    ret TemperGetOtherStuff(tbuf256);
        
    printf("Other Stuff (%d bytes):\n"ret);
        for(
    0reti++) {
            
    printf(" %02x"buf[i] & 0xFF);
            if(
    16 == 15) {
                
    printf("\n");
            }
        }
        
    printf("\n");

        for(;;) {
            
    float tempc;

            if(
    TemperGetTemperatureInC(t, &tempc) < 0) {
                
    perror("TemperGetTemperatureInC");
                exit(
    1);
            }
            
    printf("temperature %.2fF %.2fC\n", (9.0 5.0 tempc 32.0),
                   
    tempc);
            
    sleep(10);
        }
        return 
    0;
    }

    #endif 
    temper.h
    Codice PHP:
    #ifndef TEMPER_H
    #define TEMPER_H

    typedef struct Temper Temper;


    Temper *TemperCreateFromDeviceNumber(int deviceNumint timeoutint debug);
    void TemperFree(Temper *t);

    int TemperGetTemperatureInC(Temper *tfloat *tempC);
    int TempterGetOtherStuff(Temper *tchar *bufint length);

    #endif 

  8. #8
    Ho aggiunto delle modifiche a temper.c:
    codice:
    #include <stdio.h>
    #include <string.h>
    #include <usb.h>
    #include <errno.h>
    #include "temper.h"
    
    #define VENDOR_ID  0x1130
    #define PRODUCT_ID 0x660c
    
    struct Temper {
        struct usb_device *device;
        usb_dev_handle *handle;
        int debug;
        int timeout;
    };
    
    Temper *
    TemperCreate(struct usb_device *dev, int timeout, int debug)
    {
        Temper *t;
        int ret;
    
        t = calloc(1, sizeof(*t));
        t->device = dev;
        t->debug = debug;
        t->timeout = timeout;
        t->handle = usb_open(t->device);
        if(!t->handle) {
            free(t);
            return NULL;
        }
        if(t->debug) {
            printf("Trying to detach kernel driver\n");
        }
    
        ret = usb_detach_kernel_driver_np(t->handle, 0);
        if(ret) {
            if(errno == ENODATA) {
                if(t->debug) {
                    printf("Device already detached\n");
                }
            } else {
                if(t->debug) {
                    printf("Detach failed: %s[%d]\n",
                           strerror(errno), errno);
                    printf("Continuing anyway\n");
                }
            }
        } else {
            if(t->debug) {
                printf("detach successful\n");
            }
        }
        ret = usb_detach_kernel_driver_np(t->handle, 1);
        if(ret) {
            if(errno == ENODATA) {
                if(t->debug)
                    printf("Device already detached\n");
            } else {
                if(t->debug) {
                    printf("Detach failed: %s[%d]\n",
                           strerror(errno), errno);
                    printf("Continuing anyway\n");
                }
            }
        } else {
            if(t->debug) {
                printf("detach successful\n");
            }
        }
    
        if(usb_set_configuration(t->handle, 1) < 0 ||
           usb_claim_interface(t->handle, 0) < 0 ||
           usb_claim_interface(t->handle, 1)) {
            usb_close(t->handle);
            free(t);
            return NULL;
        }
        return t;
    }
    
    Temper *
    TemperCreateFromDeviceNumber(int deviceNum, int timeout, int debug)
    {
        struct usb_bus *bus;
        int n;
    
        n = 0;
        for(bus=usb_get_busses(); bus; bus=bus->next) {
            struct usb_device *dev;
    
            for(dev=bus->devices; dev; dev=dev->next) {
            if(debug) {
                printf("Found device: %04x:%04x\n",
                       dev->descriptor.idVendor,
                       dev->descriptor.idProduct);
            }
            if(dev->descriptor.idVendor == VENDOR_ID &&
               dev->descriptor.idProduct == PRODUCT_ID) {
                if(debug) {
                    printf("Found deviceNum %d\n", n);
                }
                if(n == deviceNum) {
                    return TemperCreate(dev, timeout, debug);
                }
                n++;
            }
            }
        }
        return NULL;
    }
    
    void
    TemperFree(Temper *t)
    {
        if(t) {
            if(t->handle) {
                usb_close(t->handle);
            }
            free(t);
        }
    }
    
    static int
    TemperSendCommand(Temper *t, int a, int b, int c, int d, int e, int f, int g, int h)
    {
        unsigned char buf[32];
        int ret;
    
        bzero(buf, 32);
        buf[0] = a;
        buf[1] = b;
        buf[2] = c;
        buf[3] = d;
        buf[4] = e;
        buf[5] = f;
        buf[6] = g;
        buf[7] = h;
    
        if(t->debug) {
            printf("sending bytes %d, %d, %d, %d, %d, %d, %d, %d\n",
                   a, b, c, d, e, f, g, h);
        }
    
        ret = usb_control_msg(t->handle, 0x21, 9, 0x200, 0x01,
                    (char *) buf, 32, t->timeout);
        if(ret != 32) {
            perror("usb_control_msg failed");
            return -1;
        }
        return 0;
    }
    
    static int
    TemperGetData(Temper *t, char *buf, int len)
    {
        int ret;
    
        return usb_control_msg(t->handle, 0xa1, 1, 0x300, 0x01,
                    (char *) buf, len, t->timeout);
    }
    
    int
    TemperGetTemperatureInC(Temper *t, float *tempC)
    {
        char buf[256];
        int ret, temperature, i;
    
        TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0);
        TemperSendCommand(t, 0x54, 0, 0, 0, 0, 0, 0, 0);
        for(i = 0; i < 7; i++) {
            TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        }
        TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 1, 0);
        ret = TemperGetData(t, buf, 256);
        if(ret < 2) {
            return -1;
        }
    
        temperature = (buf[1] & 0xFF) + (buf[0] << 8);    
        temperature += 1152;            // calibration value
        *tempC = temperature * (125.0 / 32000.0);
        return 0;
    }
    
    int
    TemperGetOtherStuff(Temper *t, char *buf, int length)
    {
        TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0);
        TemperSendCommand(t, 0x52, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 1, 0);
        return TemperGetData(t, buf, length);
    }
    
    
    #ifdef UNIT_TEST
    
    #define USB_TIMEOUT 1000    /* milliseconds */
    
    int
    main(int argc, char* argv[])
    {
        Temper *t;
        char buf[256];
        int i, ret;
        FILE *log;
    
        usb_set_debug(0);
        usb_init();
        usb_find_busses();
        usb_find_devices();
    
        t = TemperCreateFromDeviceNumber(0, USB_TIMEOUT, 1);
        if(!t) {
            perror("TemperCreate");
            exit(-1);
        }
    
    /*
        TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0);
        TemperSendCommand(t, 0x43, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
        TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0);
    */
    
        bzero(buf, 256);
        ret = TemperGetOtherStuff(t, buf, 256);
        printf("Other Stuff (%d bytes):\n", ret);
        for(i = 0; i < ret; i++) {
            printf(" %02x", buf[i] & 0xFF);
            if(i % 16 == 15) {
                printf("\n");
            }
        }
        printf("\n");
    
        for(;[img]images/smilies/blink.gif[/img] {
            float tempc;
    
            if(TemperGetTemperatureInC(t, &tempc) < 0) {
                perror("TemperGetTemperatureInC");
                exit(1);
            }
            
            //Salvo in un file di log se presente un file name valido in argv[1]
            if (argc == 2) {
            	log = fopen (argv[1], "a");
            	if (log != NULL) {
            	        fprintf(log, "temperature %.2fF %.2fC\n", (9.0 / 5.0 * tempc + 32.0), tempc);
            	        fclose(log);
            	}
            }
            
            printf("temperature %.2fF %.2fC\n", (9.0 / 5.0 * tempc + 32.0),
                   tempc);
            sleep(10);
        }
        return 0;
    }
    
    #endif
    Prova a ricompilare e ad avviare il programma in questo modo:
    codice:
    ./prog file.log
    Aggiungerà automaticamente l'ultima linea (quella della temperatura) nel file di log (file.log).
    Se non specifichi il parametro (oppure fornisci un filename non valido) il programma funziona come prima.

    EDIT: mi sono accorto che il codice è un po' incasinato per qualche errore di paste.
    Ho aggiunto:
    codice:
            //Salvo in un file di log se presente un file name valido in argv[1]
            if (argc == 2) {
            	log = fopen (argv[1], "a");
            	if (log != NULL) {
            	        fprintf(log, "temperature %.2fF %.2fC\n", (9.0 / 5.0 * tempc + 32.0), tempc);
            	        fclose(log);
            	}
            }
    Prima della linea:
    codice:
    printf("temperature %.2fF %.2fC\n", (9.0 / 5.0 * tempc + 32.0),
                   tempc);
    E ho aggiunto:
    codice:
        FILE *log;
    Dopo la linea:
    codice:
        int i, ret;
    Experience is what you get when you don’t get what you want

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    225
    azzz..... come vorrei conoscerlo anche io cosi.....

    procedo così :
    sudo make clean
    sudo make

    e ricevo
    Codice PHP:
    cc -DUNIT_TEST -o temper temper.-lusb
    temper
    .c:3:17errorusb.hNessun file o directory
    temper
    .c:12errorexpected specifier-qualifier-list before ‘usb_dev_handle’
    temper
    .cIn function ‘TemperCreate’:
    temper.c:23warningincompatible implicit declaration of built-in function ‘calloc’
    temper
    .c:25error‘Temper’ has no member named ‘debug’
    temper
    .c:26error‘Temper’ has no member named ‘timeout’
    temper
    .c:27error‘Temper’ has no member named ‘handle’
    temper
    .c:28error‘Temper’ has no member named ‘handle’
    temper
    .c:29warningincompatible implicit declaration of built-in function ‘free’
    temper
    .c:32error‘Temper’ has no member named ‘debug’
    temper
    .c:36error‘Temper’ has no member named ‘handle’
    temper
    .c:39error‘Temper’ has no member named ‘debug’
    temper
    .c:43error‘Temper’ has no member named ‘debug’
    temper
    .c:50error‘Temper’ has no member named ‘debug’
    temper
    .c:54error‘Temper’ has no member named ‘handle’
    temper
    .c:57error‘Temper’ has no member named ‘debug’
    temper
    .c:60error‘Temper’ has no member named ‘debug’
    temper
    .c:67error‘Temper’ has no member named ‘debug’
    temper
    .c:72error‘Temper’ has no member named ‘handle’
    temper
    .c:73error‘Temper’ has no member named ‘handle’
    temper
    .c:74error‘Temper’ has no member named ‘handle’
    temper
    .c:75error‘Temper’ has no member named ‘handle’
    temper
    .c:76warningincompatible implicit declaration of built-in function ‘free’
    temper
    .cIn function ‘TemperCreateFromDeviceNumber’:
    temper.c:89warningassignment makes pointer from integer without a cast
    temper
    .c:89errordereferencing pointer to incomplete type
    temper
    .c:92errordereferencing pointer to incomplete type
    temper
    .c:92errordereferencing pointer to incomplete type
    temper
    .c:95errordereferencing pointer to incomplete type
    temper
    .c:96errordereferencing pointer to incomplete type
    temper
    .c:98errordereferencing pointer to incomplete type
    temper
    .c:99errordereferencing pointer to incomplete type
    temper
    .cIn function ‘TemperFree’:
    temper.c:117error‘Temper’ has no member named ‘handle’
    temper
    .c:118error‘Temper’ has no member named ‘handle’
    temper
    .c:120warningincompatible implicit declaration of built-in function ‘free’
    temper
    .cIn function ‘TemperSendCommand’:
    temper.c:140error‘Temper’ has no member named ‘debug’
    temper
    .c:145error‘Temper’ has no member named ‘handle’
    temper
    .c:146error‘Temper’ has no member named ‘timeout’
    temper
    .cIn function ‘TemperGetData’:
    temper.c:159error‘Temper’ has no member named ‘handle’
    temper
    .c:160error‘Temper’ has no member named ‘timeout’
    temper
    .cIn function ‘main’:
    temper.c:216warningincompatible implicit declaration of built-in function ‘exit’
    temper
    .c:241errorexpected expression before ‘<’ token
    temper
    .c:263errorexpected expression before ‘}’ token
    temper
    .c:263errorexpected expression before ‘}’ token
    make
    : *** [temperErrore 1 

    provo a compilare con

    sudo gcc -o temper-mod temper.c
    e ricevo
    Codice PHP:
    temper.c:3:17errorusb.hNessun file o directory
    temper
    .c:12errorexpected specifier-qualifier-list before ‘usb_dev_handle’
    temper
    .cIn function ‘TemperCreate’:
    temper.c:23warningincompatible implicit declaration of built-in function ‘calloc’
    temper
    .c:25error‘Temper’ has no member named ‘debug’
    temper
    .c:26error‘Temper’ has no member named ‘timeout’
    temper
    .c:27error‘Temper’ has no member named ‘handle’
    temper
    .c:28error‘Temper’ has no member named ‘handle’
    temper
    .c:29warningincompatible implicit declaration of built-in function ‘free’
    temper
    .c:32error‘Temper’ has no member named ‘debug’
    temper
    .c:36error‘Temper’ has no member named ‘handle’
    temper
    .c:39error‘Temper’ has no member named ‘debug’
    temper
    .c:43error‘Temper’ has no member named ‘debug’
    temper
    .c:50error‘Temper’ has no member named ‘debug’
    temper
    .c:54error‘Temper’ has no member named ‘handle’
    temper
    .c:57error‘Temper’ has no member named ‘debug’
    temper
    .c:60error‘Temper’ has no member named ‘debug’
    temper
    .c:67error‘Temper’ has no member named ‘debug’
    temper
    .c:72error‘Temper’ has no member named ‘handle’
    temper
    .c:73error‘Temper’ has no member named ‘handle’
    temper
    .c:74error‘Temper’ has no member named ‘handle’
    temper
    .c:75error‘Temper’ has no member named ‘handle’
    temper
    .c:76warningincompatible implicit declaration of built-in function ‘free’
    temper
    .cIn function ‘TemperCreateFromDeviceNumber’:
    temper.c:89warningassignment makes pointer from integer without a cast
    temper
    .c:89errordereferencing pointer to incomplete type
    temper
    .c:92errordereferencing pointer to incomplete type
    temper
    .c:92errordereferencing pointer to incomplete type
    temper
    .c:95errordereferencing pointer to incomplete type
    temper
    .c:96errordereferencing pointer to incomplete type
    temper
    .c:98errordereferencing pointer to incomplete type
    temper
    .c:99errordereferencing pointer to incomplete type
    temper
    .cIn function ‘TemperFree’:
    temper.c:117error‘Temper’ has no member named ‘handle’
    temper
    .c:118error‘Temper’ has no member named ‘handle’
    temper
    .c:120warningincompatible implicit declaration of built-in function ‘free’
    temper
    .cIn function ‘TemperSendCommand’:
    temper.c:140error‘Temper’ has no member named ‘debug’
    temper
    .c:145error‘Temper’ has no member named ‘handle’
    temper
    .c:146error‘Temper’ has no member named ‘timeout’
    temper
    .cIn function ‘TemperGetData’:
    temper.c:159error‘Temper’ has no member named ‘handle’
    temper
    .c:160error‘Temper’ has no member named ‘timeout’ 
    ah ...mi erodimenticato... se avvio il programma

    sudo ./temper

    funziona regolarmente ma non scrive nel file.log

  10. #10
    Ma prima che eseguissi le modifiche riuscivi a compilarlo ?
    Experience is what you get when you don’t get what you want

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 © 2024 vBulletin Solutions, Inc. All rights reserved.