Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Smartphone et application PC

2 réponses
Avatar
lagoelle
Salut,

J'essaie de créer une application permettant tout simplement de copier un
fichier, appelons le "Fichier.txt", se trouvant dans "C:\Temp" sur le
smartphone.
Dans le smartphone (telephone portable avec un OS windows), les chemins
n'ont pas de lettres de lecteurs, donc je voudrais coller dans "\SmartPhone"
mon Fichier.txt...

Lorsque je connecte le telephone avec le PC, une icone "Appareil Mobile"
(dossier systeme) apparait dans l'explorateur windows, en développant, il y
a un autre dossier Système "Mon Smartphone" et en développant les différents
répertoires du telephone. Dans la barre d'adresse d'exploreur pas de nom de
lecteur, juste "\Nom_du_dossier".

J'ai essayé:
System.IO.File.Copy (@"C:\Temp\Fichier.txt",@"\SmartPhone\Fichier.txt");
//Erreur le chemin de destination n'est pas compatible avec File.Copy......

Puis j'ai essayé SHFileOperation:

InteropSHFileOperation shFileOp = new InteropSHFileOperation();
shFileOp.pFrom = @"C:\Temp\Fichier.txt";

shFileOp.pTo = @"\SmartPhone\Fichier.txt";

shFileOp.Execute();



Ces 2 essais ont été placés dans l'évenement clic d'un button: pour le
premier essai (file.copy), j'ai intercepté l'erreur. Par contre pour le 2e
essai avec SHFileOperation, rien n'est intercepté, mais rien n'est créé dans
le repertoire "\SmartPhone", et lorsque je reclic sur le button, une boite
de dialogue me dit :' le fichier ". existe déja, voulez vous le remplacer ?
'

Je suis complètement perdu, quelqu'un saurait il d'où ça vient ? Si vous
avez une autre idée pour parvenir à mes fins, je vous remercie d'avance. ;-)
--
@ plus

lagoelle@hotmail.com

2 réponses

Avatar
Remi Thomas - MVP
"lagoelle" écrivit
Salut,

J'essaie de créer une application permettant tout simplement de copier un
fichier, appelons le "Fichier.txt", se trouvant dans "C:Temp" sur le
smartphone.
Dans le smartphone (telephone portable avec un OS windows), les chemins
n'ont pas de lettres de lecteurs, donc je voudrais coller dans
"SmartPhone" mon Fichier.txt...

Lorsque je connecte le telephone avec le PC, une icone "Appareil Mobile"
(dossier systeme) apparait dans l'explorateur windows, en développant, il
y a un autre dossier Système "Mon Smartphone" et en développant les
différents répertoires du telephone. Dans la barre d'adresse d'exploreur
pas de nom de lecteur, juste "Nom_du_dossier".

J'ai essayé:
System.IO.File.Copy (@"C:TempFichier.txt",@"SmartPhoneFichier.txt");
//Erreur le chemin de destination n'est pas compatible avec
File.Copy......

Puis j'ai essayé SHFileOperation:

InteropSHFileOperation shFileOp = new InteropSHFileOperation();
shFileOp.pFrom = @"C:TempFichier.txt";

shFileOp.pTo = @"SmartPhoneFichier.txt";

shFileOp.Execute();



Ces 2 essais ont été placés dans l'évenement clic d'un button: pour le
premier essai (file.copy), j'ai intercepté l'erreur. Par contre pour le 2e
essai avec SHFileOperation, rien n'est intercepté, mais rien n'est créé
dans le repertoire "SmartPhone", et lorsque je reclic sur le button, une
boite de dialogue me dit :' le fichier ". existe déja, voulez vous le
remplacer ? '

Je suis complètement perdu, quelqu'un saurait il d'où ça vient ? Si vous
avez une autre idée pour parvenir à mes fins, je vous remercie d'avance.
;-)
--
@ plus




La réponse est RAPI.
La vue du SmartPhone n'est en rien un répertoire monté sur la machine. C'est
un plugin de Windows Explorer qui donne cette impression.
RAPI est l'API d'ActiveSync qui permet depuis le PC de communiquer avec le
SmartPhone.
Tapes "CeCreateFile" dans Google pour tomber sur la doc MSDN et les
fonctions disponibles avec RAPI.

Par contre RAPI c'est du C, donc il faut passer par l'Interop "pinvoke" de
.NET pour y accèder ou faire un projet Managed C++.

Rémi

--
Rémi Thomas - MVP Visual Studio .NET
Développeur Windows indépendant
http://www.xtware.com/cv
Avatar
lagoelle
Merci beaucoup pour cet éclaircissement ;-)

Par contre mes compétences (pour l'instant) sont trop limites pour intégrer
cette fonction.
J'ai bien trouver le lien:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceactsy/html/cerefCeCreateFileRAPI.asp
Mais je ne saurais pas l'utiliser, si tu pouvais m'expliquer et / ou me
montrer comment ça marche, je t'en serais reconnaissant (si tu en as le
temps, bien entendu).

En tout cas, merci.
--
@ plus