Forum Liberty Basic France

Le 28/06/2012 à 17h37

Libertynaute Avancé

Groupe: Membre

Inscrit le: 08/06/2012
Messages: 270
Faites peur à vos potes avec ce mini soft créé par moi :lol

Le code :


compteur=1
while compteur <= 100
print "Formatage en cours ";compteur
print "Formatage en cours ";(compteur+1)
compteur=compteur+2
wend
print "Formatage finis 100%"
reboot$=""
input "Appuyer sur entrer pour que l'ordinateur redemmare ";reboot$
end

C'est vraiment un code simple ( fait pendant mon apprentissage du JB ) mais assez bien fait je trouve.





____________________
Si le meilleurs langage de programmation existe, alors le Just Basic est loin devant.
Ne me tappez pas dessus ! Je débute :D

Web    
Le 28/06/2012 à 22h52

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 1993
Pour te montrer comme le partenariat est difficile à mettre en oeuvre en informatique, je t'ai bricolé un prog qui rempli les memes fonctions que le tiens ( faire croire que....), mais en prenant une autre façon de faire.
Profite des commentaires qui t'en apprendrons sur les chaines et autre...
Ceci dit, fais gaffe quand meme, car JB est assez puissant pour detruire vraiment des fichiers et des dossiers, et il ne faut pas grand chose pour mettre Windows en rade.

Code JB :
 
 
 nomainwin              ' pas de mainwin
    WindowWidth = 250   'dimensions de la fenetre
    WindowHeight = 150
    UpperLeftX = (DisplayWidth-WindowWidth) / 3  ' place le fenetre sur lécran
    UpperLeftY = (DisplayHeight-WindowHeight) / 2
    statictext #w, "Dossier: C/Windows", 10, 20, 200, 25  'w, pas d'extension--> texte fixe
    statictext #w.txt, "", 10, 40, 200, 25   'w;txt, extension: "text" --> texte variable
    statictext #w.txt2, "", 10, 60, 200, 25
    graphicbox #w.g, 10, 75, 150, 40   ' la boite noire, place , dimensions
    open "Super Nettoyeur"for window_nf as #w 'le nom du prog le type de la fenetre
    #w "trapclose [quit]"  ' branchement pour donner la main à la croix de fermeture
    dim col$(15) ' déclaration d'un tableau à une dimension
 
    print #w.g, "down"   'abaisse le pinceau
    print #w.g, "fill black"  'rempli de noir la #w.g  (graphicbox)
 
  gosub [charge]
 
  for i= 1 to 20
    print #w.txt,"Destruction en cours:  ";word$(n$,i) ' lis la n$ mot à mot
    gosub [gloups]  ' affichage du progress bar
  next i
 
  print #w.txt,"Windows sera plus léger maintenant" ' fin du cycle
 
  wait  ' sans ce wait, le prog, à la fin du cycle va relire les sous prog...
          '...va rencontrer les returns sans y avoir été envoyé par un gosub...
            '...et va envoyer une erreur "return sans gosub"
  [charge]
    n$="Config Cursors Drivers Fonts Microsoft.NET Prefetch "_  'le "_" permet de passer à la ligne
    +"Ressources system system32 twain32 WinSxS ATICIM.INI "_   'le "+" colle les bouts de chaine entre eux
    +"control.ini desktop.ini explorer.exe regedit.exe Setup1.exe "_
    +"twain.dll twain32.dll WindowsShell "
 
    colo$="yellow brown red darkred pink darkpink blue darkblue "_
    +"green darkgreen cyan darkcyan lightgray darkgray"
    for t=1 to 14
     col$(t)= word$(colo$,t) ' rempli le tableau col$() avec le contenu de la chaine colo$
     next t
  return
 
  [gloups]
  y=30:t=1  'y--> place en hauteur
    for x=10 to 140 step 10
        print #w.g,"backcolor ";col$(t) 'couleur du pinceau
        #w.g "place ";x;" ";y;"; boxfilled 10 10" 'place avec variables sinon--> "place 20 30"
        t=t+1    ' change la couleur
      gosub [pause]
    next x
  return
 
 
  [quit]
    close #w
    end
 
   [pause]
    timer 100, [temps] 'en millisecondes
  wait
 [temps]
    timer 0
  return
 
 




Edité par Roland Le 28/06/2012 à 23h04
____________________
Roro

   
Le 29/06/2012 à 15h50

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Hihi !

Faut croire qu'on ai tous eu la même idée à un moment ou à un autre.
J'ai retrouvé ce petit programme :

Code VB :
'Concour Canular de Noufnouf°°°
'Par Black Templar
'Open source

nomainwin
WindowWidth = 200
WindowHeight = 70
UpperLeftX = (WindowWidth-DisplayWidth)/2
UpperLeftY = (WindowHeight-DisplayHeight)/2
 
stylebits #1 ,0 ,0 ,_WS_EX_TOPMOST, 0
statictext #1.text, "Hello World !!", 1, 1, 200, 100
open "" for window as #1
#1.text, "!font Arial 23"
 
struct POINTAPI, _
       X as long, _
       Y as long
 
#1, "trapclose [quit]"
hd = hwnd(#1)
fx = 5
fy = 5
'PosX = (WindowWidth-DisplayWidth)/2
'PosY = (WindowHeight-DisplayHeight)/2

timer 1, [move]
wait
 
[move]
PosX = PosX + fx
PosY = PosY + fy
if PosX + 200 >= DisplayWidth and fx = 5 then fx = -5
if PosX <= 0 and fx = -5 then fx = 5
if PosY + 100 >= DisplayHeight and fy = 5 then fy = -5
if PosY <= 0 and fy = -5 then fy = 5
scan
calldll #user32, "SetWindowPos", _
                 hd as long, _
                 _HWND_NOTOPMOST as long, _
                 PosX as long, _
                 PosY as long, _
                 200 as long, _
                 70 as long, _
                 _SWP_NOZORDER as long, _
                 result as long
 
calldll #user32, "GetCursorPos", POINTAPI As struct, r As Long
    if (POINTAPI.X.struct < (PosX + 200)) and  (POINTAPI.X.struct > (PosX + 180)) and (POINTAPI.Y.struct > (PosY)) and (POINTAPI.Y.struct < (PosY + 20)) then calldll #user32, "SetCursorPos", 1 As Long, 1 As Long, r As Long
 
wait
 
[quit]
close #1
 
WindowWidth = DisplayWidth
WindowHeight = DisplayHeight
BackgroundColor$ = "black"
ForegroundColor$ = "white"
'graphicbox #11.g, 500,500,1,1
statictext #11.t,"", 1,1,300,25
statictext #11.t2,"", 1,35,500,200
'statictext #11.t3,"", 1,235,500,500
open "" for window_popup as #11
hd=hwnd(#11)
    flag=_SW_MAXIMIZE
    calldll #user32, "ShowWindow",_
                     hd as long,_
                     flag as long,_
                     result as long
#11, "trapclose [exit]"
#11, "font Verdana_Ref 10"
 
msg$ = "C:\> WINDOWS\SYSTEM32\VIR.COM"+chr$(13)+chr$(13)
msg2$ = "Installation en cour  . . ." _
       +chr$(13)+"SYSTEM32\VIR.DLL" _
       +chr$(13)+"SYSTEM32\USER32.DLL" _
       +chr$(13)+"SYSTEM32\SET.EXE" _
       +chr$(13)+"SYSTEM32\CONFIG.CFG" _
       +chr$(13)+"SYSTEM32\TIME.BIN" _
       +chr$(13)+"SYSTEM32\KEY.DAT" _
       +chr$(13)+"SYSTEM32\INIT.TXT" _
       +chr$(13)+"SYSTEM32\REPLACE.EXE" _
       +chr$(13)+chr$(13)+"Installation completed"
x = 13
y = 15
 
message$ = ""
for i = 1 to len(msg$)
    message$ = message$ + mid$(msg$,i,1)
    print #11.t, message$ 
    if i = 4 then call pause 1000*2
    if i>4 then call pause 100
next
message$ = ""
for i = 1 to len(msg2$)
    if mid$(msg2$,i,1) = chr$(13) then call pause 200
    message$ = message$ + mid$(msg2$,i,1)
    print #11.t2, message$
 
next
call pause 1000*5
 
struct OSVI,_
dwOSVersionInfoSize as long,_
dwMajorVersion as long,_
dwMinorVersion as long,_
dwBuildNumber as long,_
dwPlatformId as long,_
szCSDVersion$ as char[128]
 
OSVI.dwOSVersionInfoSize.struct= _
        len(OSVI.struct)
 
'create a test batch file
batchFile$ = DefaultDir$+"\test.bat"
 
open batchFile$ for output as #1
#1 "@echo off"
#1 "echo Dos 1.00a"
#1 "echo."
#1 "echo Installation VIR.COM"
#1 "echo Date : 2006"
#1 "echo Start : 1 days"
#1 "echo."
'#1 "pause"
#1 "echo."
#1 "echo                 ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»"
#1 "echo                 °                        °"
#1 "echo                 ° INSTALLATION COMPLETED °"
#1 "echo                 °                        °"
#1 "echo                 ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍŒ"
#1 "echo."
#1 "echo."
#1 "echo."
#1 "pause"
#1 "exit"
close #1
 
q$ = chr$(34)
SysVersion = getBatchVersion()
select case SysVersion
        case 0
        Notice "Une erreur s'est produite"+ _
        " version system."
        case 4
        run "command.com /k "+q$+batchFile$+q$ 
        case 5
        run "cmd.exe /k "+q$+batchFile$+q$ 
        case Else
        notice "Logiciel d'exploitation non supporté"
end select
 
 
 
 
 
close #11
end
 
sub pause time
    calldll #kernel32, "Sleep", time as ulong, result   as void
end sub
 
function getBatchVersion()
calldll #kernel32, "GetVersionExA", _
        OSVI as struct, r as long
if r then
        OSVersion=OSVI.dwMajorVersion.struct
        PlatformId=OSVI.dwPlatformId.struct
        select case PlatformId
        case _VER_PLATFORM_WIN32_NT
                If OSVersion >=4 Then getBatchVersion=5
        case _VER_PLATFORM_WIN32_WINDOWS
                getBatchVersion = OSVersion
        end select
end if
end function


ça tourne sous LB ! (pas sous JB)
Attention, ça risque d'être énervant :p ;)

Mail MSN Web    
Le 29/06/2012 à 17h49

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 1993
Oula ! On va décortiquer la chose avant de lui lacher la bride.
Je me fais déja assez peur tout seul avec des manips hasardeuses... :p
J'ai pas été trop vicieux genre: full screen, avec une bonne boucle infinie. ;)



Edité par Roland Le 29/06/2012 à 18h01
____________________
Roro

   
Le 29/06/2012 à 22h31

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Roland:
J'ai pas été trop vicieux genre: full screen, avec une bonne boucle infinie. ;)


Fullscreen oui, j'en ai fait, mais il n'y a pas de boucle infini, ne t'inquiète pas ^^
Le seul truc qui peut être énervant, c'est la fenêtre du début, mais il y a des astuces pour la fermer "facilement" XD (j'en étais assez fier de cette première fenêtre à l'époque XD)

Mail MSN Web    
Le 29/06/2012 à 22h54

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 1993
Ton prog contient des noyaux qui ne passent pas dans mon moulin à légume ( dll...! )
Quand les américains se déciderons à m'envoyer la licence (que j'ai payée), je pourrai virer le countingdown
et commencer de mouliner de la dll ( averses de questions en perspective......)
____________________
Roro

   
Le 01/07/2012 à 03h14

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 236
[quote=RolandQuand les américains se déciderons à m'envoyer la licence (que j'ai payée)[/quote]

Ça fait longtemps que tu as commandé ta licence ?
____________________

MSN Yahoo Web    
Le 01/07/2012 à 11h25

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 1993
Le problème, c'est que j'ai commencé par me planter sur le prix :
J'ai en envoyé 40 dollars le 9 Mai, je me suis aperçu de la connerie fin Mai, j'ai envoyé 20 dollars début Juin.
Les deux par mandat international, le deuxième accompagné d'une lettre dans laquelle je dis mon erreur.
Sur tous ces papiers, il y a: nom, adresse, téléphone et email.
Je ne suis pas encore retourné à la poste pour faire vérifier que les mandats sont arrivés à bon port , on m'a dit que ça pouvait prendre un mois ( le pognon est transporté par des bourricots montés sur matelats pneumatiques., alors tu comprend... selon la direction du vent... l'état de la mer...) Bref, c'est la Poste... :heink
Hier, j'ai envoyé un mail perso à Carl Gundel par le biais du forum "Liberty" ( sans grande conviction sur le fonctionnement du truc...) :gne
Si rien ne bouge, j'envisage de passer par quelqu'un qui a déjà fait la manip, qui voudra bien me donner son adresse, recevoir un chèque, prendre une licence, et me l'envoyer...Je pense à Claude ( si il n'a pas pris la mouche, suite à un de mes posts...) ou à un des maitres du donjon ( qui bricole avec les dll, et donc a la licence )
Bon, rien ne presse, et 60 dollars, au cours du dollar, ça va pas me ruiner...
Merci de t'inquieter de moi..........à+ :)
____________________
Roro

   
Le 09/12/2014 à 09h16

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
un petit code tout simple

for boucle = 1 to 100
print "Formatage de votre ordinateur en cours.. " ; boucle ; "% effectués..."
for attente = 1 to 345000
next attente
cls
next boucle
notice "Cliquer sur OK pour redémarrer votre ordinateur."
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie