IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

Copie de dossier et contenu


Sujet :

Visual C++

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 14
    Points : 14
    Points
    14
    Par défaut Copie de dossier et contenu
    Bonjour,
    mon problème est le suivant, je voudrai copier un dossier et son contenu.
    Le dossier source se trouve sur un PDA sous Windows Mobile et la cible sera sur pc.

    je tien à dire que ce code est entierement de la récup, un mixe de 'ptree.cpp' qui affiche tout le contenu d'un dossier et 'pget.cpp' qui copie un fichier de WM>PC.

    j'aurai besoin d'aide sur la focntion FoundFile et CopyFileWCE
    le pb est que quand je rencontre un dossier le chemin doit changer.
    exemple : c:\ ya des fichiers etc et il y a le dossier Windows
    je rentre dans le dossier windows pour copier les fichiers mais je doit change le chemin de destination.

    enfin bref vous avez compris. je ferais le programme qui réalise la copie dans le sens contraire a partir de sa.
    Merci Merci Merci bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    #include <windows.h>
    #include <tchar.h>
    #include <stdio.h>
    #include <string.h>
    #include <rapi.h>
    #include <strsafe.h>
     
    #define ARRAYSIZE(x) (sizeof(x)/sizeof(x[0]))
     
    WCHAR wszDestDir[MAX_PATH];
    WCHAR wszSrcDir[MAX_PATH];
    WCHAR wszSrcFile[MAX_PATH];
    WCHAR wszDestFile[MAX_PATH];
    BYTE  Buffer[4096];
     
    int CopyFileWCE(LPCWSTR wszSrcFile, LPCWSTR wszDestFile)
    {
    	HANDLE hSrc, hDest;
        DWORD dwNumRead, dwNumWritten;
     
    	hSrc = CeCreateFile(
                    wszSrcFile,
                    GENERIC_READ,
                    FILE_SHARE_READ,
                    NULL,
                    OPEN_EXISTING,
                    FILE_ATTRIBUTE_NORMAL,
                    NULL);
        if (INVALID_HANDLE_VALUE == hSrc)
        {
            _tprintf( TEXT("Unable to open Windows CE file"));
            return 1;
        }
     
        hDest = CreateFile(
                    wszDestFile,
                    GENERIC_WRITE,
                    FILE_SHARE_READ,
                    NULL,
                    CREATE_ALWAYS,
                    FILE_ATTRIBUTE_NORMAL,
                    NULL);
     
        if (INVALID_HANDLE_VALUE == hDest)
        {
            _tprintf( TEXT("Unable to open host/destination file"));
            return 1;
        }
    #ifdef UNICODE
        wprintf( TEXT("Copying WCE:%s to %s\n"), wszSrcFile, wszDestFile);
    #else
        printf( TEXT("Copying WCE:%S to %s\n"), tszSrcFile, wszDestFile);
    #endif
     
        do
        {
            if (CeReadFile(
                    hSrc,
                    &Buffer,
                    sizeof(Buffer),
                    &dwNumRead,
                    NULL))
            {
                if (!WriteFile(
                        hDest,
                        &Buffer,
                        dwNumRead,
                        &dwNumWritten,
                        NULL))
                {
                    _tprintf( TEXT("Error !!! Writing hostfile"));
                    CeCloseHandle( hSrc);
    				CloseHandle (hDest);
                }
            }
            else
            {
                _tprintf( TEXT("Error !!! Reading Windows CE file"));
                CeCloseHandle( hSrc);
    			CloseHandle (hDest);
            }
            _tprintf( TEXT("."));                                        
        } while (dwNumRead);
        _tprintf( TEXT("\n"));
     
    	return 0;
     
    }
     
    int FoundFile(LPWSTR Path, LPWSTR destPath, UINT Indent)
    {
    	DWORD foundCount; // nombre de fichier trouver
    	LPCE_FIND_DATA findDataArray; // tableau de structure contenant les infos des fichiers
    	HRESULT hr;
     
    	if(!CeFindAllFiles(wszSrcDir, FAF_ATTRIBUTES | FAF_NAME, &foundCount, &findDataArray))
    	{
    		_tprintf( TEXT("*** CeFindAllFiles failed. ***\n"));
    		return 1;
    	}
     
    	if(!foundCount)
            return 1;
     
        for(UINT i = 0; i < foundCount; i++)
        {
            for(UINT indCount = 0; indCount < Indent; indCount++)
                _tprintf( TEXT("  "));
     
            if(findDataArray[i].dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
            {
    			//si c'est un dossier
                _tprintf( TEXT("[%s]\n"),findDataArray[i].cFileName);
                WCHAR newPath[MAX_PATH];
    			WCHAR newDest[MAX_PATH];
                hr = StringCchCopyW(newPath, ARRAYSIZE(newPath), Path);
                if(FAILED(hr))
                {
                    return 1;
                }
    			hr = StringCchCopyW(newDest, ARRAYSIZE(newDest), destPath);
                if(FAILED(hr))
                {return 1;}
     
                hr = StringCchCatW(newPath, ARRAYSIZE(newPath), findDataArray[i].cFileName);
                if(FAILED(hr))
                {
                    return 1;
                }            
                hr = StringCchCatW(newDest, ARRAYSIZE(newDest), findDataArray[i].cFileName);
                if(FAILED(hr))
                {return 1;}
     
                hr = StringCchCatW(newPath, ARRAYSIZE(newPath), L"\\");
                if(FAILED(hr))
                {
                    return 1;
                }
                hr = StringCchCatW(newDest, ARRAYSIZE(newDest), L"\\");
                if(FAILED(hr))
                {return 1;}
     
                FoundFile(newPath, newDest, Indent + 1);
            }
            else
            {	
    			//si non
                _tprintf( TEXT("%s\n"),findDataArray[i].cFileName);
    			CopyFileWCE(findDataArray[i], newDest);
            }
        }
     
    	if (findDataArray)
        {
            RapiFreeBuffer(findDataArray);
        }
     
    	return 0;
    }
     
    int main( int argc, char *argv[])
    {
    	HRESULT hRapiResult;
     
        int nResult;
     
        if (3 != argc)
        {
            _tprintf( TEXT("Syntax: PGET <wce file or directory> <host file or directory>\n"));
            return 1;
        }
     
    #ifdef UNICODE
        nResult = MultiByteToWideChar(
                        CP_ACP,    
                        MB_PRECOMPOSED,
                        argv[1],
                        (int) strlen(argv[1])+1,
                        wszSrcDir,
                        ARRAYSIZE(wszSrcDir));
        if(0 == nResult)
        {
    		_tprintf( TEXT("Failed to convert input arguement <wce file or directory>\n"));
            return 1;
        }
    #else
        hr = StringCchCopy(wszSrcDir, ARRAYSIZE(wszSrcDir), argv[1]);
        if(FAILED(hr))
        {
    		_tprintf( TEXT("Failed to convert input arguement <wce file or directory>\n"));
            return 1;
        }
    #endif
     
    #ifdef UNICODE
        nResult = MultiByteToWideChar(
                        CP_ACP,    
                        MB_PRECOMPOSED,
                        argv[2],
                        (int) strlen(argv[2])+1,
                        wszDestDir,
                        ARRAYSIZE(wszDestDir));
        if(0 == nResult)
        {
    		_tprintf( TEXT("Failed to convert input arguement <host file or directory>\n"));
            return 1;
        }
    #else
        hr = StringCchCopy(wszDestDir, ARRAYSIZE(wszDestDir), argv[2]);
        if(FAILED(hr))
        {
    		_tprintf( TEXT("Failed to convert input arguement <host file or directory>\n"));
            return 1;
        }
    #endif
     
    	_tprintf( TEXT("Connecting to Windows CE... "));
     
    	hRapiResult = CeRapiInit();
     
    	if (FAILED(hRapiResult))
    	{
    		_tprintf( TEXT("Failed\n"));
    		return 1;
    	}
     
    	_tprintf( TEXT("Success\n"));	
     
    	FoundFile( wszSrcDir, wszDestDir, 0); // appel fonction de traitement de fichier
     
    	_tprintf( TEXT("Closing connection ..."));
        CeRapiUninit();
        _tprintf( TEXT("Done\n"));
     
    	return 0;
    }

  2. #2
    Membre émérite
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Points : 2 677
    Points
    2 677
    Par défaut
    Pourquoi ne pas simplement utiliser une méthode de débutant pour sélectionner les fichiers 1 par 1 avant de les transférer (là utiliser ce que tu as trouver pour le transfert WM>PC), au lieu que de prendre un lance-roquette pour tuer une mouche et finalement la rater ?
    Vous postez du code ? Merci d'utiliser les balises
    Un message vous paraît pertinent ? Merci de le gratifier d'un vote positif
    Vous avez obtenu une réponse à votre question ? Merci d'utiliser le tag
    __________________
    Ingénieur R&D, diplômé en 2007 de l'ISIMA
    Docteur en informatique, diplômé en 2015 de l'EDSPI de Clermont-Ferrand

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 14
    Points : 14
    Points
    14
    Par défaut
    donc si je comprend bien je suis une sorte de Terminator du C++ lol.
    concrètement ça serais aprés mon CeFindAllFiles tout les fichiers irai dans le tableau finddataArray de structure LPCE_FIND_DATA.
    parcourire mon tableau et copie tout ce qui est diffèrent de l'attribut FILE_ATTRIBUTE_DIRECTORY.
    et comment faire pour gérer les sous dossiers? car là je vais me retrouver avec tout mes fichiers dans un seul dossier.

    merci de ta réponse rapide TheGzD.

  4. #4
    Membre émérite
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Points : 2 677
    Points
    2 677
    Par défaut
    Jette un coup d'œil à la FAQ concernant les fichiers, à mon avis tu y trouveras ce que tu cherches.
    Vous postez du code ? Merci d'utiliser les balises
    Un message vous paraît pertinent ? Merci de le gratifier d'un vote positif
    Vous avez obtenu une réponse à votre question ? Merci d'utiliser le tag
    __________________
    Ingénieur R&D, diplômé en 2007 de l'ISIMA
    Docteur en informatique, diplômé en 2015 de l'EDSPI de Clermont-Ferrand

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 14
    Points : 14
    Points
    14
    Par défaut
    merci mais le pb c'est que je boss avec des fonctions pour Windows Mobile.
    tout ce dont j'aurai besoin serais d'une sorte d'algorithme pour ensuite pouvoir codé.
    peux-tu m'aider ? merci

  6. #6
    Membre émérite
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Points : 2 677
    Points
    2 677
    Par défaut
    Justement dans la FAQ tu as tout ce qu'il te faut :
    - parcourt d'arborescence
    - lecture
    - écriture

    Pour faire simple, tu parcours ton arborescence et tu copies les fichiers 1 par 1 (lecture sur le PPC et écriture sur le PC). Pour la copie soit tu disposes d'une fonction qui te permet d'utiliser directement le CFile pour le copier de l'un à l'autre, soit tu l'ouvres et tu le serialises avant de récupérer la chaine sur le PC et de l'écrire dans un CFile que tu auras créé. Rien de bien sorcier je pense.

    Ça m'étonnerai que le SDK pour WM n'inclue pas ces fonctions là, au pire tu auras juste à vérifier que la fonction existe bien et prend les mêmes paramètres (clic droit > Go To Definiton).
    Vous postez du code ? Merci d'utiliser les balises
    Un message vous paraît pertinent ? Merci de le gratifier d'un vote positif
    Vous avez obtenu une réponse à votre question ? Merci d'utiliser le tag
    __________________
    Ingénieur R&D, diplômé en 2007 de l'ISIMA
    Docteur en informatique, diplômé en 2015 de l'EDSPI de Clermont-Ferrand

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 14
    Points : 14
    Points
    14
    Par défaut
    ba c'est réglé depuis l'autre jour deja, voila mon code au cas où si ça peut servir à quelqu'un.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    #include <windows.h>
    #include <tchar.h>
    #include <stdio.h>
    #include <string.h>
    #include <rapi.h>
    #include <strsafe.h>
     
    #define ARRAYSIZE(x) (sizeof(x)/sizeof(x[0]))
     
    WCHAR wszDestDir[MAX_PATH];
    WCHAR wszSrcDir[MAX_PATH];
    WCHAR wszSrcFile[MAX_PATH];
    WCHAR wszDestFile[MAX_PATH];
    BYTE  Buffer[4096];
    HRESULT hr;
     
    int FileCopy(LPCWSTR wszSrcFile, LPCWSTR wszDestFile)
    {
    	HANDLE hSrc, hDest;
        DWORD dwNumRead, dwNumWritten;
     
    	hSrc = CeCreateFile(
                    wszSrcFile,
                    GENERIC_READ,
                    FILE_SHARE_READ,
                    NULL,
                    OPEN_EXISTING,
                    FILE_ATTRIBUTE_NORMAL,
                    NULL);
        if (INVALID_HANDLE_VALUE == hSrc)
        {
            _tprintf( TEXT("Unable to open Windows CE file\n"));
            return 1;
        }
     
        hDest = CreateFile(
                    wszDestFile,
                    GENERIC_WRITE,
                    FILE_SHARE_READ,
                    NULL,
                    CREATE_ALWAYS,
                    FILE_ATTRIBUTE_NORMAL,
                    NULL);
     
        if (INVALID_HANDLE_VALUE == hDest)
        {
    		_tprintf( TEXT("Unable to open host/destination file\n"));
            return 1;
        }
    #ifdef UNICODE
        wprintf( TEXT("Copying WCE:%s to %s\n"), wszSrcFile, wszDestFile);
    #else
        printf( TEXT("Copying WCE:%S to %s\n"), tszSrcFile, wszDestFile);
    #endif
     
        do
        {
            if (CeReadFile(
                    hSrc,
                    &Buffer,
                    sizeof(Buffer),
                    &dwNumRead,
                    NULL))
            {
                if (!WriteFile(
                        hDest,
                        &Buffer,
                        dwNumRead,
                        &dwNumWritten,
                        NULL))
                {
                    _tprintf( TEXT("Error !!! Writing hostfile\n"));
                    CeCloseHandle( hSrc);
    				CloseHandle (hDest);
                }
            }
            else
            {
                _tprintf( TEXT("Error !!! Reading Windows CE file\n"));
                CeCloseHandle( hSrc);
    			CloseHandle (hDest);
            }
            _tprintf( TEXT("."));                                        
        } while (dwNumRead);
        _tprintf( TEXT("\n"));
     
    	return 0;
     
    }
     
    int FoundFile(LPWSTR srcPath, LPWSTR destPath, UINT Indent)
    {
    	DWORD          foundCount;
        LPCE_FIND_DATA findDataArray;
     
        WCHAR searchPath[MAX_PATH];
     
        hr = StringCchCopyW(searchPath, ARRAYSIZE(searchPath), srcPath);
        if(FAILED(hr))
        { return 1; }
        hr = StringCchCatW(searchPath, ARRAYSIZE(searchPath), L"*");
        if(FAILED(hr))
        { return 1; }
     
        if(!CeFindAllFiles(searchPath,
                            FAF_ATTRIBUTES | FAF_NAME,
                            &foundCount,
                            &findDataArray))
        {
            _tprintf( TEXT("*** CeFindAllFiles failed. ***\n"));
            return 1;
        }
     
        if(!foundCount)
            return 1;
     
        for(UINT i = 0; i < foundCount; i++)
        {
            for(UINT indCount = 0; indCount < Indent; indCount++)
                _tprintf( TEXT("  "));
     
            if(findDataArray[i].dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
            {
                _tprintf( TEXT("[%s]\n"),findDataArray[i].cFileName);
                WCHAR newPath[MAX_PATH];
    			WCHAR newDest[MAX_PATH];
     
                hr = StringCchCopyW(newPath, ARRAYSIZE(newPath), srcPath);
                if(FAILED(hr))
                { return 1; }
                hr = StringCchCatW(newPath, ARRAYSIZE(newPath), findDataArray[i].cFileName);
                if(FAILED(hr))
                { return 1; }            
                hr = StringCchCatW(newPath, ARRAYSIZE(newPath), L"\\");
                if(FAILED(hr))
                { return 1; }
     
                hr = StringCchCopyW(newDest, ARRAYSIZE(newDest), destPath);
                if(FAILED(hr))
                { return 1; }
                hr = StringCchCatW(newDest, ARRAYSIZE(newDest), findDataArray[i].cFileName);
                if(FAILED(hr))
                { return 1; }            
                hr = StringCchCatW(newDest, ARRAYSIZE(newDest), L"\\");
                if(FAILED(hr))
                { return 1; }
     
    			hr = CreateDirectory(newDest, NULL);
    			if( hr = 0 )
    			{ return 1; }
     
                FoundFile(newPath, newDest, Indent + 1);
            }
            else
            {
                _tprintf( TEXT("%s\n"),findDataArray[i].cFileName);
     
    			WCHAR srcCopyFile[MAX_PATH];
    			WCHAR destCopyFile[MAX_PATH];
     
    			hr  = StringCchCopyW(srcCopyFile, ARRAYSIZE(srcCopyFile), srcPath);
    			if(FAILED(hr))
    			{ return 1; }
    			hr  = StringCchCatW(srcCopyFile, ARRAYSIZE(srcCopyFile), findDataArray[i].cFileName);
    			if(FAILED(hr))
    			{ return 1; }
     
    			hr  = StringCchCopyW(destCopyFile, ARRAYSIZE(destCopyFile), destPath);
    			if(FAILED(hr))
    			{ return 1; }
    			hr  = StringCchCatW(destCopyFile, ARRAYSIZE(destCopyFile), findDataArray[i].cFileName);
    			if(FAILED(hr))
    			{ return 1; }
     
    			FileCopy( srcCopyFile, destCopyFile);
            }
        }
     
    	if (findDataArray)
        {
            RapiFreeBuffer(findDataArray);
        }
     
    	return 0;
    }
     
    int main( int argc, char *argv[])
    {
    	HRESULT hRapiResult;
     
        int nResult;
     
        if (3 != argc)
        {
            _tprintf( TEXT("Syntax: PGET <wce file or directory> <host file or directory>\n"));
            return 1;
        }
     
    #ifdef UNICODE
        nResult = MultiByteToWideChar(
                        CP_ACP,    
                        MB_PRECOMPOSED,
                        argv[1],
                        (int) strlen(argv[1])+1,
                        wszSrcDir,
                        ARRAYSIZE(wszSrcDir));
        if(0 == nResult)
        {
    		_tprintf( TEXT("Failed to convert input arguement <wce file or directory>\n"));
            return 1;
        }
    #else
        hr = StringCchCopy(wszSrcDir, ARRAYSIZE(wszSrcDir), argv[1]);
        if(FAILED(hr))
        {
    		_tprintf( TEXT("Failed to convert input arguement <wce file or directory>\n"));
            return 1;
        }
    #endif
     
    #ifdef UNICODE
        nResult = MultiByteToWideChar(
                        CP_ACP,    
                        MB_PRECOMPOSED,
                        argv[2],
                        (int) strlen(argv[2])+1,
                        wszDestDir,
                        ARRAYSIZE(wszDestDir));
        if(0 == nResult)
        {
    		_tprintf( TEXT("Failed to convert input arguement <host file or directory>\n"));
            return 1;
        }
    #else
        hr = StringCchCopy(wszDestDir, ARRAYSIZE(wszDestDir), argv[2]);
        if(FAILED(hr))
        {
    		_tprintf( TEXT("Failed to convert input arguement <host file or directory>\n"));
            return 1;
        }
    #endif
     
    	_tprintf( TEXT("Connecting to Windows CE... "));
     
    	hRapiResult = CeRapiInit();
     
    	if (FAILED(hRapiResult))
    	{
    		_tprintf( TEXT("Failed\n"));
    		return 1;
    	}
     
    	_tprintf( TEXT("Success\n"));	
     
    	FoundFile( wszSrcDir, wszDestDir, 0); // appel fonction de traitement de fichier
     
    	_tprintf( TEXT("Closing connection ..."));
        CeRapiUninit();
        _tprintf( TEXT("Done\n"));
     
    	return 0;
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. copie dossier et contenu en excluant type de fichier
    Par julien0709 dans le forum VBScript
    Réponses: 2
    Dernier message: 20/06/2008, 13h59
  2. Copie de dossiers
    Par taly dans le forum Langage
    Réponses: 1
    Dernier message: 02/08/2006, 21h08
  3. Copie à la volée du contenu d'un textbox
    Par jczill dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/07/2006, 15h34
  4. Copie de dossiers
    Par CrazySeb dans le forum Général Java
    Réponses: 15
    Dernier message: 29/04/2006, 01h47
  5. [Système] Copie de dossiers
    Par neXistPa dans le forum Langage
    Réponses: 4
    Dernier message: 08/01/2006, 12h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo