void *ImageLink::imageRecvThread(void *pParam) { ImageLink *iLink = (ImageLink*)pParam; int nIndex = 0; int nSizeRecv = 0; unsigned int nPacketCounter = 0; int i=0; char File[256]; struct tm *stime_dir; char trame[150]; //********Creation Arborescence****** CreateDirectory("film",NULL); time(&time_dir); stime_dir = localtime(&time_dir); sprintf(File,"film\\film_%02d-%02d_%02dH%02d", stime_dir->tm_mday, stime_dir->tm_mon+1, stime_dir->tm_hour, stime_dir->tm_min); int existe=CreateDirectory(File,NULL); if(existe==0){ __DBG_LOG("Attention veillez a ne pas declenché deux connection dans la même minute"); return NULL; } //Création du fichier de lancement de la video sprintf(trame,"%s\\image_ID_",File); FILE *fp1=fopen(trame,"wb+"); fclose(fp1); __DBG_LOG("Creation Arborescence et fichier de lancement"); //*********Reception Image********* ..............(Cette partie n'est pas de moi mais a toujours tres bien marché, quoi que je fasse))....... //*****fin de reception image******** if (iLink->bImageComplete) { while ((iLink->processRecvImage() == ILINK_ERR_TIMEOUT) && !iLink->bRecvStopRequest); if (iLink->bRecvStopRequest) break; iLink->flushOldPackets(); int i=iLink->nRecvImageID; //Création des fichiers contenant les buffer d'images sprintf(trame,"%s\\image_ID_%i",File,i); /****la a chaque fois il m'affiche A@**** __DBG_LOG("%s",iLink->tRecvImageBuffers->pImage); //******Ecriture des donnees dans le fichier**** HANDLE hfl = CreateFile(trame,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL); if(hfl==INVALID_HANDLE_VALUE){ __DBG_LOG("Erreur d'ouverture du fichier"); return NULL; } DWORD dWrited; int erreur=WriteFile(hfl, iLink->tRecvImageBuffers->pImage, iLink->tRecvImageBuffers->nSize, &dWrited, NULL); if(erreur==0){ DWORD error=GetLastError(); __DBG_LOG("erreur:%s",error); } CloseHandle(hfl); __DBG_LOG("ImageLink::imageRecvThread: New image is #%d", iLink->nRecvImageID); }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionImageLink *iLink = (ImageLink*)pParam; int nIndex = 0; int nSizeRecv = 0; unsigned int nPacketCounter = 0; int i=0; char File[256]; char trame[150]; //********Creation Arborescence****** //***recuperation heure*** CreateDirectory("film",NULL); SYSTEMTIME SystemTime; GetLocalTime(&SystemTime); wsprintf(File,"film\\film_%02d-%02d_%02dH%02d", SystemTime.wDay, SystemTime.wMonth, SystemTime.wHour, SystemTime.wMinute); //****creation****** int existe=CreateDirectory(File,NULL); if(existe==0){ __DBG_LOG("Attention veillez a ne pas declenché eux connection dans la même minute"); return NULL; } //****fichier lancement video** wsprintf(trame,"%s\\image_ID_",File); HANDLE hfl = CreateFile(trame,GENERIC_WRITE,0,NULL,CREATE_NEW,FILE_ATTRIBUTE_READONLY,NULL); if(hfl==INVALID_HANDLE_VALUE){ __DBG_LOG("Erreur d'ouverture du fichier"); return NULL; } CloseHandle(hfl); __DBG_LOG("Creation Arborescence et fichier de lancement"); //*********Reception Image********* ............................................... //********fin reception********* if (iLink->bImageComplete) { while ((iLink->processRecvImage() == ILINK_ERR_TIMEOUT) && !iLink->bRecvStopRequest); if (iLink->bRecvStopRequest) break; iLink->flushOldPackets(); int i=iLink->nRecvImageID; //Création des fichiers contenant les buffer d'images wsprintf(trame,"%s\\image_ID_%i",File,i); __DBG_LOG("%s",iLink->tRecvImageBuffers->pImage); //******Ecriture des donnees dans le fichier**** HANDLE hfl2 = CreateFile(trame,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL); if(hfl2==INVALID_HANDLE_VALUE){ __DBG_LOG("Erreur d'ouverture du fichier"); return NULL; } DWORD dWrited; int erreur=WriteFile(hfl2, iLink->tRecvImageBuffers->pImage, iLink->tRecvImageBuffers->nSize, &dWrited, NULL); if(erreur==0){ DWORD error=GetLastError(); __DBG_LOG("erreur:%s",error); } CloseHandle(hfl2); __DBG_LOG("ImageLink::imageRecvThread: New image is #%d", iLink->nRecvImageID); }