Choose another language: 

Détails du projet (protocole) v0001 (deprecated)
5 posts
• Page 1 of 1
Détails du projet (protocole) v0001 (deprecated)
Détails coté dll ou plugin:
Si la dll ou le plugin ne peu ce connecté ou est déconnecté alors elle ce décharge du système.
Choix du mode de communication:
Le pipe nommé, cela permet d'isoler le langage et l'architecture, donc utilisé une dll 64Bits avec un programme 32Bits, mais aussi faire un programme en pascal alors que la dll est en c++. Et aussi de garantir qu'on travail en local. Cela permet aussi de détecter la déconnexion de l'application ou du plugin.
Recomposition et décomposition:
Du coté du plugin ou de la dll, la trame doit être découper en petit packet de 32Ko max, à cause de cette limitation avant le découpage il faut inclure en entête la taille de la trame recomposé sous forme d'un entier non signé de 32Bits.
Du coté de l'application la trame doit être recomposé et on doit enlevé l'entête spécifiant la taille de la trame recomposé avant de travailler avec.
Encodage utilisé:
L'encodage choisi est l'unicode (utf16) dons chaque caractères est encodé sur 16bits en big endian. Tout les OS récent utilise nativement cette encodage.
Exemple de trame recomposé:
Format de l'envoie des données une fois la trame recomposé en l'entête de taille non présent:
0000DC79 est içi l'id de la copie, généré par le système ce connectant à l'application charger de faire la copie.
00000001 est la définition de la version du protocole
00000018 (taille de la chaine en octets) 00460069006c0065004500780070006c006f007200650072 -> "FileExplorer" étant la chaîne identifiant le système/explorateur connecté à l'application de copie.
Donc en décomposant cela nous donne:
La réponse:
Une fois que la copie est complètement traité (échec ou réussite total), on lui renvoie l'id de la copie fini sauf si cette id précédemment reçu est égal à 0:
Si la dll ou le plugin ne peu ce connecté ou est déconnecté alors elle ce décharge du système.
Choix du mode de communication:
Le pipe nommé, cela permet d'isoler le langage et l'architecture, donc utilisé une dll 64Bits avec un programme 32Bits, mais aussi faire un programme en pascal alors que la dll est en c++. Et aussi de garantir qu'on travail en local. Cela permet aussi de détecter la déconnexion de l'application ou du plugin.
Recomposition et décomposition:
Du coté du plugin ou de la dll, la trame doit être découper en petit packet de 32Ko max, à cause de cette limitation avant le découpage il faut inclure en entête la taille de la trame recomposé sous forme d'un entier non signé de 32Bits.
Du coté de l'application la trame doit être recomposé et on doit enlevé l'entête spécifiant la taille de la trame recomposé avant de travailler avec.
Encodage utilisé:
L'encodage choisi est l'unicode (utf16) dons chaque caractères est encodé sur 16bits en big endian. Tout les OS récent utilise nativement cette encodage.
Exemple de trame recomposé:
Format de l'envoie des données une fois la trame recomposé en l'entête de taille non présent:
0000DC79 00000001 0000001800460069006c0065004500780070006c006f007200650072 000000060000000200610000000400610062000000060061006200630000000800610062006300640000000a006100620063006400650000000c006100620063006400650066
0000DC79 est içi l'id de la copie, généré par le système ce connectant à l'application charger de faire la copie.
00000001 est la définition de la version du protocole
00000018 (taille de la chaine en octets) 00460069006c0065004500780070006c006f007200650072 -> "FileExplorer" étant la chaîne identifiant le système/explorateur connecté à l'application de copie.
Donc en décomposant cela nous donne:
- 00000006 Taille de la liste
- 00000002 (taille de la chaine en octets) 0061 -> a
- 00000004 (taille de la chaine en octets) 00610062 -> ab
- 00000006 (taille de la chaine en octets) 006100620063 -> abc
- 00000008 (taille de la chaine en octets) 0061006200630064 -> abcd
- 0000000a (taille de la chaine en octets) 00610062006300640065 -> abcde
- 0000000c (taille de la chaine en octets) 006100620063006400650066 -> abcdef
La réponse:
Une fois que la copie est complètement traité (échec ou réussite total), on lui renvoie l'id de la copie fini sauf si cette id précédemment reçu est égal à 0:
- Code: Select all
0000DC79
Enjoy ultracopier 
- alpha_one_x86
- Site Admin
- Posts: 34
- Joined: Sun Oct 26, 2008 9:09 am
Exemple sous windows
Voila un exemple pratique sous windows (juste la liste texte):
- cp
- c:\source1.txt
- c:\destination\
- cp
- c:\source1.txt
- c:\destination1.txt
- mv
- c:\source1.txt
- c:\source2.txt
- c:\destination\
Enjoy ultracopier 
- alpha_one_x86
- Site Admin
- Posts: 34
- Joined: Sun Oct 26, 2008 9:09 am
Exemple sous unix
Voila un exemple pratique sous unix (juste la liste texte):
- cp
- /home/user/source1.txt
- /home/user/destination/
- cp
- /home/user/source1.txt
- /home/user/destination1.txt
- mv
- /home/user/source1.txt
- /home/user/source2.txt
- /home/user/destination/
Enjoy ultracopier 
- alpha_one_x86
- Site Admin
- Posts: 34
- Joined: Sun Oct 26, 2008 9:09 am
Recomposition
Si la taille max était de 1Ko:
Avant recomposition:
Après décomposition:
Packet 1:
Packet 2:
Packet 3:
Packet 4:
Avant recomposition:
00000fae0000000000000001000000260055006c0074007200610063006f007000690065007200200030002e0032002e0030002e00300000001a00000004006300700000009a002f0068006f006d0065002f00750073006
50072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c00740072006100630
06f0070006900650072002f007300720063002f0041006400640046006f006c006400650072002e0063007000700000009c002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f00440065
0073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f0043006f00
700079005400680072006500610064002e00630070007000000096002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c00740072
00610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f004500770069006e0064006f0077002e006300700070000000980
02f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e00650072006
1006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f0046004500770069006e0064006f0077002e00630070007000000096002f0068006f006d0065002f0075007300650072002f004400650
073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f007000690065007
2002f007300720063002f004d00770069006e0064006f0077002e00630070007000000096002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f007000330
02f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f004f007000740069006f006e0073002e006
30070007000000092002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d006
70065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f005500490063006f006e002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f0
04400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006
900650072002f007300720063002f00570072006900740065005400680072006500610064002e0063007000700000009c002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650
073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f00680065006
c0070006400690061006c006f0067002e00630070007000000090002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c007400720
0610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d00610069006e002e006300700070000000a2002f0068006f006
d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f0041006400640046006f006c006400650072002e006300700070000000a4002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900
650072002f007300720063002f006d006f0063005f0043006f00700079005400680072006500610064002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f0
04400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f
006d006f0063005f004500770069006e0064006f0077002e006300700070000000a0002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f007
5006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f0046004500770069006e00640
06f0077002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f00700069006
50072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f004d00770069006e0064006f0077002e0063007000700000009e002f00680
06f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002
f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f004f007000740069006f006e0073002e0063007000700000009a002f0068006f006d0065002f0075007300650072002f004400
650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f007000690065
0072002f007300720063002f006d006f0063005f005500490063006f006e002e006300700070000000a6002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006
f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f005700720
06900740065005400680072006500610064002e006300700070000000a4002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c007
4007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f00680065006c0070006400690061006
c006f0067002e006300700070000000a6002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900
650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f0073007000610063006500570069006e0064006f0077002e006300700070
000000a2002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e00
6500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f007100720063005f007200650073006f00750072006300650073002e006300700070000000b8002f0068006f006d0065002f
0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c007400
7200610063006f0070006900650072002f007300720063002f007100720063005f007200650073006f00750072006300650073005f007300740079006c0065005f006b006400650033002e00630070007000000098002f0068006f
006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f00
75006c0074007200610063006f0070006900650072002f007300720063002f00720065006700690073007400650072002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b0074
006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300
720063002f0073007000610063006500570069006e0064006f0077002e00630070007000000042002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f0070
0033002f0064006500730074002f
Après décomposition:
Packet 1:
- Code: Select all
00000fae0000000000000001000000260055006c0074007200610063006f007000690065007200200030002e0032002e0030002e00300000001a00000004006300700000009a002f0068006f006d0065002f007500730065
0072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c007400720061006300
6f0070006900650072002f007300720063002f0041006400640046006f006c006400650072002e0063007000700000009c002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650
073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f0043006f007
00079005400680072006500610064002e00630070007000000096002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c007400720
0610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f004500770069006e0064006f0077002e0063007000700000009800
2f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061
006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f0046004500770069006e0064006f0077002e00630070007000000096002f0068006f006d0065002f0075007300650072002f0044006500
73006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072
002f007300720063002f004d00770069006e0064006f0077002e00630070007000000096002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f0070003300
2f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f004f007000740069006f006e0073002e0063
0070007000000092002f0068006f006d0065002f007500730065
Packet 2:
- Code: Select all
0072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610
063006f0070006900650072002f007300720063002f005500490063006f006e002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b007
4006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f005700720069007400650
05400680072006500610064002e0063007000700000009c002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c007400720061006
3006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f00680065006c0070006400690061006c006f0067002e00630070007000000
090002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e0065007
20061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d00610069006e002e006300700070000000a2002f0068006f006d0065002f0075007300650072002f004400650073006b00740
06f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f0073007
20063002f006d006f0063005f0041006400640046006f006c006400650072002e006300700070000000a4002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b00740
06f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f0043006f
00700079005400680072006500610064002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c007400
7200610063006f0070006900650072002d00670065006e0065
Packet 3:
- Code: Select all
00720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f004500770069006e0064006f0077002e006300700070000000a0002f0068006f006d0065002f00750
07300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c00740072006
10063006f0070006900650072002f007300720063002f006d006f0063005f0046004500770069006e0064006f0077002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b00740
06f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f0073007
20063002f006d006f0063005f004d00770069006e0064006f0077002e0063007000700000009e002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f007000
33002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f004f007000740069
006f006e0073002e0063007000700000009a002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f007000
6900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f005500490063006f006e002e006300700070000000a6002f0068006f
006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f00
75006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f00570072006900740065005400680072006500610064002e006300700070000000a4002f0068006f006d0065002f007500730065
0072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c007400720061006300
6f0070006900650072002f007300720063002f006d006f0063
Packet 4:
- Code: Select all
005f00680065006c0070006400690061006c006f0067002e006300700070000000a6002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f007000330
02f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f006d006f0063005f0073007000610063006
500570069006e0064006f0077002e006300700070000000a2002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610
063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f007100720063005f007200650073006f00750072006300650073002e006
300700070000000b8002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670
065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f007100720063005f007200650073006f00750072006300650073005f007300740079006c0065005f006b0064006
50033002e00630070007000000098002f0068006f006d0065002f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650
072002d00670065006e006500720061006c002f0075006c0074007200610063006f0070006900650072002f007300720063002f00720065006700690073007400650072002e0063007000700000009e002f0068006f006d006500
2f0075007300650072002f004400650073006b0074006f0070002f004400650073006b0074006f00700033002f0075006c0074007200610063006f0070006900650072002d00670065006e006500720061006c002f0075006c0074
007200610063006f0070006900650072002f007300720063002f0073007000610063006500570069006e0064006f0077002e00630070007000000042002f0068006f006d0065002f0075007300650072002f004400650073006b00
74006f0070002f004400650073006b0074006f00700033002f0064006500730074002f
Enjoy ultracopier 
- alpha_one_x86
- Site Admin
- Posts: 34
- Joined: Sun Oct 26, 2008 9:09 am
Envoie de plusieur trame
Pour l'envoye de plusieur trame et donc commande différente, ce sont les trames recomposé:
Envoie de la copie 1 à faire avec la copie id DC79:
Fin du packet précédent et début d'un nouveau packet. Les 2 trames ne doivent pas être concaténé.
Envoie de la copie 2 à faire avec la copie id DC7A (changement de numéro, car il doit étre unique):
Envoie de la copie 1 à faire avec la copie id DC79:
0000DC79 00000001 0000001800460069006c0065004500780070006c006f007200650072 000000060000000200610000000400610062000000060061006200630000000800610062006300640000000a006100620063006400650000000c006100620063006400650066
Fin du packet précédent et début d'un nouveau packet. Les 2 trames ne doivent pas être concaténé.
Envoie de la copie 2 à faire avec la copie id DC7A (changement de numéro, car il doit étre unique):
0000DC7A 00000001 0000001800460069006c0065004500780070006c006f007200650072 000000060000000200610000000400610062000000060061006200630000000800610062006300640000000a006100620063006400650000000c006100620063006400650066
Enjoy ultracopier 
- alpha_one_x86
- Site Admin
- Posts: 34
- Joined: Sun Oct 26, 2008 9:09 am
5 posts
• Page 1 of 1

