Re: Ephemeride + Météo
Publié : jeu. 23/juin/2016 13:41
Bonjour,
Pas mal pour une premiere contribution ^^.
mais, je viens de remarque un problème sur les informations des "disques durs". Déjà il ne détecte pas un disque. Après les 2 derniers disque détecter sont en fait un lecteur CD/DVD et lecteur de carte SD, qui on les valeurs du dernier disque réel.
Voir image (en rouge les disque "faux" (h et k)) :

Cordialement,
GallyHC
Ré-edition :
Ok je viens de comprendre le problème. Ton appli ne peu fonctionner que pour toi en fait, car les lecteurs sont en dur dans le code, du style :
Le problème est qu'il n'est pas bon pour un autre ordinateur que le tiens. Si j'ai un disque de xTo cela donne quoi? (forcement ça détend, ça dépasse). J'ai fait une petite routine permettant de convertir facilement en ko, Mo, ... voila le code :
Pas mal pour une premiere contribution ^^.
mais, je viens de remarque un problème sur les informations des "disques durs". Déjà il ne détecte pas un disque. Après les 2 derniers disque détecter sont en fait un lecteur CD/DVD et lecteur de carte SD, qui on les valeurs du dernier disque réel.
Voir image (en rouge les disque "faux" (h et k)) :

Cordialement,
GallyHC
Ré-edition :
Ok je viens de comprendre le problème. Ton appli ne peu fonctionner que pour toi en fait, car les lecteurs sont en dur dans le code, du style :
Code : Tout sélectionner
drive$ = "E:\"
GetDiskFreeSpaceEx_(@drive$,BytesFreeToCaller.int64,TotalBytes.int64,TotalFreeBytes.int64)
; calcul de la taille en Mb
TotalMB = ((TotalBytes\Long1 >> 20) & $FFF) | (TotalBytes\Long2 << 12)
FreeMB = ((TotalFreeBytes\Long1 >> 20) & $FFF) | (TotalFreeBytes\Long2 << 12)
TotalMB=Int(TotalMB/1000)
FreeMB=Int(FreeMB/1000)
Code : Tout sélectionner
Procedure.s ConvertSize(filesize.d, decimal.l = 1)
; ROUTINE DE CONVERSION DE LA TAILLE FICHIER.
Protected i.l = 1
Protected j.s = "o,Ko,Mo,Go,To"
Protected k.l = CountString(j, ",")
While filesize >= 1024 And i <= k
filesize / 1024
i + 1
Wend
Protected sres.s = StrF(filesize, decimal)
Protected sent.s = StringField(sres, 1, ".")
Protected sdec.s = StringField(sres, 2, ".")
If i = 1
ProcedureReturn sent + " o"
Else
If Val(sdec) = 0
ProcedureReturn sent + " " + StringField(j, i, ",")
Else
ProcedureReturn sres + " " + StringField(j, i, ",")
EndIf
EndIf
EndProcedure
; EXEMPLE :
Debug ConvertSize(100000)