Projet : Gestionnaire de Téléchargement et Upl sur RapidShar

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Projet : Gestionnaire de Téléchargement et Upl sur RapidShar

Message par Ar-S »

Salut amis PureBasiciens

J'ai un projet de logiciel mais je sais pertinement que je n'ai pas le niveau pour programmer un truc de la sorte.
Donc je voudrais savoir si cela interresserait quelqu'un (ou quelques uns) de bosser avec moi sur ce projet.

Projet :

Créer un soft de gestion des fichiers hebergés par RapidShare.com (hebergeur de fichiers) via un compte premium. Une fenetre pour Uploader et une fenetre pour télécharger.

Pourquoi ?
Rapidshare offre un logiciel du nom de Rapiduploader qui permet seulement l'upload. Le problème est que l'on peut upper seulement un fichier à la fois !! Ce bridage n'existait pas à la creation de Rapidshare (.de à la base)


I - La partie Downloader

1 - Une fenettre ou l'on aurait à coller du presse papier une liste d'URL
auquelle serait ajouter un nom et mot de passe.

Ex :
http://toto1 => Copier
Aller dans le programme
Bouton coller du presse papier
resultat : http://LOGIN:PASSWORD@rapidshare.com/blablabla/file.zip
Sachant que mdp et toto seraient à remplir dans l'interface

Le soft (via un fichier ini) devra stoquer en crypté pseudo et mdp afin de ne pas avoir à retaper à chaque fois.

2 - Si le programme pouvait gérer la pause/reprise du téléchargement ce serait un must.

II - La partie Uploader.

Bon là je vous avoue que je n'ai aucune idée de comment faire.
Je souhaiterai que par un Glissé/déposé dans le soft, les fichiers soient uppés (en même temps) sur rapidshare.com, pour les utilisateur de compte prémium.
Ensuite les liens générés par le site seraient stoqués dans un fichier genre "history" ou "link"


Si vous avez des questions n'hésitez pas.

Le soft original :
http://images.rapidshare.com/software/r ... loader.exe
Dernière modification par Ar-S le ven. 08/juin/2007 10:19, modifié 1 fois.
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Re: Projet : Gestionnaire de Téléchargement et Upl sur Rapid

Message par lionel_om »

Ar-S a écrit :mais je sais pertinement que je n'ai pas le niveau pour programmer un truc de la sorte.
Pour faire un soft, je ne pense pas que ca soit une question de niveau, mais plutôt de temps.
Si t'as du temps, lance toi :wink: .
Par contre y'a quelque chose qui peut te faire économiser pas mal de temps et de soucis, c'est une analyse minutieuse et complète de ton projet :
* bien définir les fonctionnalités (voir même en prévoir plus, mais ne pas tout faire : vaut mieux prévoir plus, car rajouter c'est tjrs galère)
* bien définir tes structures
* penser aux fonctions qui te permettront d'éviter de te casser la tête ou de réécrire 5 fois la même chose, avec seulement des petites nuances...

Bref, rien de très sorcier. Mais dans un vrai projet, on dit que 20% du temps est accordé à la programmation, le reste c'est de l'analyse, démarchage, prise de RDV... Donc plus tu réfléchira avant, plus tu seras où tu vas et donc tu avanceras vite !!!

Bon courage
Lio :wink:
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Message par Ar-S »

Merci pour tes conseils, qui sont logiques mais justes.

Pour simplifier, et surtout parceque c'est le plus important,
j'aimerai au moins faire un soft pour uploader.

L'interface ressemblerait à ça :

Code : Tout sélectionner

;{- Enumerations / DataSections
;{ Windows
Enumeration
  #fenetre_1
  #Window_1
EndEnumeration
;}
;{ Gadgets
Enumeration
  #Ed_Login
  #Ed_Mdp
  #Text_titre
  #Text_Login
  #Text_Mdp
  #Bouton_Connect
  #Coche
  #Ed_DragDrop
  #Bouton_CopyDL2Clip
  #Text_Titre2
  #Button_13
EndEnumeration
;}
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
;}
Procedure OpenWindow_fenetre_1()
  If OpenWindow(#fenetre_1, 389, 156, 296, 127, "Window_0", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    If CreateGadgetList(WindowID(#fenetre_1))
      EditorGadget(#Ed_Login, 0, 25, 190, 20)
      EditorGadget(#Ed_Mdp, 0, 45, 190, 20)
      TextGadget(#Text_titre, 7, 4, 285, 20, "RS UPLOADER by Ar-S v0.1", #PB_Text_Center)
      TextGadget(#Text_Login, 195, 28, 80, 15, "Premium Login")
      TextGadget(#Text_Mdp, 195, 48, 95, 15, "Premium Password")
      ButtonGadget(#Bouton_Connect, 0, 95, 295, 30, "Connect")
      CheckBoxGadget(#Coche, 2, 70, 190, 25, "Remember Login and Password ?")
      GadgetToolTip(#Coche, "Tick to remeber, password will be crypt.")
      ; Gadget Colors
      PureCOLOR_SetGadgetColor(#Text_titre, #PureCOLOR_SystemColor, #PureCOLOR_DontSetBackColor)
      PureCOLOR_SetGadgetColor(#Text_Login, #PureCOLOR_SystemColor, #PureCOLOR_DontSetBackColor)
      PureCOLOR_SetGadgetColor(#Text_Mdp, #PureCOLOR_SystemColor, #PureCOLOR_DontSetBackColor)
      PureCOLOR_SetButtonColor(#Bouton_Connect, $0, $76B1F3)
      PureCOLOR_SetGadgetColor(#Coche, #PureCOLOR_SystemColor, #PureCOLOR_DontSetBackColor)
      ; Window Backcolor
      PureCOLOR_SetWindowColor(#fenetre_1, $4080FF)
    EndIf
  EndIf
EndProcedure
Procedure OpenWindow_Window_1()
  If OpenWindow(#Window_1, 466, 337, 341, 323, "Window_1", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    If CreateGadgetList(WindowID(#Window_1))
      EditorGadget(#Ed_DragDrop, 0, 25, 340, 230, #PB_Editor_ReadOnly)
      SetGadgetText(#Ed_DragDrop, "Drag and Drop your file(s) here :)")
      ButtonGadget(#Bouton_CopyDL2Clip, 0, 260, 340, 25, "Copy Download link(s) to Clipboard")
      TextGadget(#Text_Titre2, 0, 3, 340, 20, "RS UPLOADER by Ar-S v0.1", #PB_Text_Center)
      ButtonGadget(#Button_13, 0, 290, 340, 25, "Copy All link(s) to Clipboard")
      ; Gadget Colors
      PureCOLOR_SetGadgetColor(#Text_Titre2, #PureCOLOR_SystemColor, #PureCOLOR_DontSetBackColor)
      ; Window Backcolor
      PureCOLOR_SetWindowColor(#Window_1, $80FF)
    EndIf
  EndIf
EndProcedure

OpenWindow_fenetre_1()
OpenWindow_Window_1()

;{- Event loop
Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()
      If EventGadget = #Ed_Login
      ElseIf EventGadget = #Ed_Mdp
      ElseIf EventGadget = #Text_titre
      ElseIf EventGadget = #Text_Login
      ElseIf EventGadget = #Text_Mdp
      ElseIf EventGadget = #Bouton_Connect
      ElseIf EventGadget = #Coche
      ElseIf EventGadget = #Ed_DragDrop
      ElseIf EventGadget = #Bouton_CopyDL2Clip
      ElseIf EventGadget = #Text_Titre2
      ElseIf EventGadget = #Button_13
      EndIf
    ; //////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #fenetre_1
        CloseWindow(#fenetre_1)
        Break
      ElseIf EventWindow = #Window_1
        CloseWindow(#Window_1)
        Break
      EndIf
  EndSelect
ForEver
;
;}
Evidement la fenetre window_1 apparaitrait uniquement si le login et passe de la fenetre 0 seraient ok.

Pour les procédures j'en voit plusieurs :

CryptPass()
pour crypter dans un txt le pass et login, voir juste le pass

DragNdrop()
Gérer le glisser déplacer dans #Ed_DragDrop

RecupeLiens()
Qui servirait à récupérer tous les liens générés par Rapidshare apres le up

Affiche()
Pour afficher dans l'editor #Ed_DragDrop les liens de RecupeLiens()

Copy2ClipBoard()
qui servirait evidement à copier les liens de download générés dans le clipboard

CopyAll2ClipBoard()
qui servirait à copier tous les liens de download+delete link générés par rapidshare dans le clipboard

Ce seraient les principales procédures, même si j'ai surement à en trouver d'autres (dont les principales : envoyer les fichiers sur rapidshare)
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Ce qui est intéressant et vachement utile, c'est lister les actions possibles et faire des scénarios d'utilisation :
* faire des phrases du type <acteur> fait <action> sur <objet>
* voir les enchaînements des actions pour exécuter une fonctionnalité : faire des phrases en décrivant le plus possible les actions à faire (et ce qui sera affiché) pour effectuer telle action

Lio :wink:
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Thierryfr
Messages : 102
Inscription : mer. 04/avr./2007 16:28

Message par Thierryfr »

bonsoir AR- S

j'ai essayer de voir ton interface
mais quand je lance le code j'ai un message d'erreur :

POLINK: error:Unresolved external symbol'_PB_GetgadgetItemText2'.
POLINK :Fatal error :1 Unresolved external(s).
Thierryfr
Messages : 102
Inscription : mer. 04/avr./2007 16:28

Message par Thierryfr »

j'ai mal installer la lib PureColor je me suis tromper de version quand je l'ai telecharger.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Message par Ar-S »

Ouf, tu m'as surpris là :)
Thierryfr
Messages : 102
Inscription : mer. 04/avr./2007 16:28

Message par Thierryfr »

Rassure toi AR- S j'avais télécharger la lib version 4.1x c'est pour ça que j'avais ce message d'erreur.

sinon quels sont les applications que tu as crée avec PB?
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Message par Ar-S »

Heu... un petit renamer, une GUI pour rar.exe, et un petit soft trouvant le numéro du jour par rapport au calendrier.
Rien de mirobolent mais je débute.

Mon domaine est plus le multimedia (website, photoshop, 3D)
Thierryfr
Messages : 102
Inscription : mer. 04/avr./2007 16:28

Message par Thierryfr »

merci
moi aussi je debute
j'ai juste crée un mini blocnote
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Message par Cls »

lionel_om a écrit :Ce qui est intéressant et vachement utile, c'est lister les actions possibles et faire des scénarios d'utilisation
Pour un gros projet (et même pour les petits :))c'est intéréssant de faire un dossier de conception (spécification, conception, tests). Il comprend les digrammes suivants:
- cas d'utilisations (comment va être utilisé le logiciel)
- séquence (comment le logiciel va gérer les cas d'utilisations)
- classes et UML (si c'est orienté objet)
- IHMs

La maintenance est beaucoup plus aisée et le client (s'il y en a un) est d'autand plus satisfait (il connait à l'avance ce qui va être programmé).
A savoir que ce dossier de conception doit pouvoir être remis à n'importe quelle équipe de développement.

Cordialement,
Cls
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Cls a écrit :
lionel_om a écrit :Ce qui est intéressant et vachement utile, c'est lister les actions possibles et faire des scénarios d'utilisation
Pour un gros projet (et même pour les petits :))c'est intéréssant de faire un dossier de conception (spécification, conception, tests). Il comprend les digrammes suivants:
- cas d'utilisations (comment va être utilisé le logiciel)
- séquence (comment le logiciel va gérer les cas d'utilisations)
- classes et UML (si c'est orienté objet)
- IHMs

La maintenance est beaucoup plus aisée et le client (s'il y en a un) est d'autand plus satisfait (il connait à l'avance ce qui va être programmé).
A savoir que ce dossier de conception doit pouvoir être remis à n'importe quelle équipe de développement.

Cordialement,
Cls
Je voulais pas rentré dans ces détails :lol: mais oui tu as raison :wink:

Lio
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Message par Cls »

C'était une petite précision pour ceux qui n'y connaissent rien, ca peut être utile de savoir ce genre de chose.
Répondre