CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Fonctions spéciales en Pascal

le_duche
le_duche
Niveau 10
03 décembre 2004 à 14:22:08

Bonjour, je cherche quelque fonctions bien particulières en Pascal:

1) Y a t il une commande pour éteindre le PC ?
2) Et une commande pour tester si un fichier existe.

:merci:

dnob700
dnob700
Niveau 10
03 décembre 2004 à 17:24:49

pour savoir si un fichier existe je ne sais pas trop, je ne connait pa le pascal, mais eu pire, tu peut ouvrir le fichier et regardé s´il fait plus de 0 octet.

pour éteindre l´ordinateur, ça m´étonnerait sérieusement qu´il y a une commande pour le faire, c´est pas facile pour un programme d´éteindre le PC. enfin, tu peut peut-être appeler des commande system pour faire ça ( ou si tu utilise delphi passer par l´API.

Yoda_Software
Yoda_Software
Niveau 30
03 décembre 2004 à 18:11:38

Pour vérifier si un fichier existe, il suffit de tenter de l´ouvrir, et si il te renvoie un code d´erreur différent de zéro, le fichier n´existe pas.

Pour éteindre le PC, un simple shellexecute de " shutdown" ( à toi de voir pour les options en faisant shutdown / ? dans la console dos) devrait suffir !

Technix59
Technix59
Niveau 5
04 décembre 2004 à 13:30:49

Voici le code que je viens généreusement de te pondre pour tester l´existence d´un fichier:

uses crt;

var
f: File;
FileExist: Boolean;

begin
ClrScr;
Assign(f, ´C:\AUTOEXEC.BAT´);
{$I-}
Reset(f);
{$I+}
FileExist:= IORESULT = 0;

CASE FileExist OF
True: WriteLN(´Le fichier existe´);
False: WriteLN(´Le fichier n´´existe pas´);
END;

ReadKey;
end.

le_duche
le_duche
Niveau 10
09 décembre 2004 à 16:21:34

cool merci

Technix59
Technix59
Niveau 5
09 décembre 2004 à 20:49:53

Juste un petit Add-on, juste dessous le FileExist:= IORESULT = 0, ajoute la ligne suivante: Close(f);

le_duche
le_duche
Niveau 10
10 décembre 2004 à 16:07:59

meme si j´utilise le fichier juste apres ?

Yoda_Software
Yoda_Software
Niveau 30
10 décembre 2004 à 16:23:34

Ben non !
Je te conseille de faire une fonction FileExist juste pour tester la présence du fichier, du genre :

Function FileExists ( FileName: String);
Var F: File;
Begin
Assign(F, FileName);
{$I-}
Reset(F);
{$I+}
FileExist:=(IOResult=0);
Close(F);
End;

Et tu l´utilise de la manière suivante :

If FileExist(´C:\autoexec.bat´) Then
Begin
. .. {ouverture du fichier et exploitation de son contenu}
End
Else
WriteLN(´Le fichier n´´existe pas´);

le_duche
le_duche
Niveau 10
11 décembre 2004 à 13:09:31

OK c´est cool.
Juste une petite question: ca veut dire quoi tes commentaires {$l-} et {$l+} ?

Yoda_Software
Yoda_Software
Niveau 30
11 décembre 2004 à 14:17:23

Ce ne sont pas des commentaires, mais des directives de compilation.
Si je me souviens bien, {$I-} désactive la gestion des erreurs d´entrée/sortie pour te laisser les gérer toi même, et {$I+} la réactive.

le_duche
le_duche
Niveau 10
11 décembre 2004 à 20:43:21

et c´est bien un L entre $ et - ?

Yoda_Software
Yoda_Software
Niveau 30
11 décembre 2004 à 23:00:24

Non, un i Majuscule !

le_duche
le_duche
Niveau 10
12 décembre 2004 à 20:54:43

Ouais ok
Sauf que sa marche pas si je met le Close(F)
Si je le met pas tout va bien !

Yoda_Software
Yoda_Software
Niveau 30
12 décembre 2004 à 22:12:17

J´ai donné ce code de mémoire.
Met le juste avant le {$I+}

le_duche
le_duche
Niveau 10
13 décembre 2004 à 15:18:39

ok!
C´est cool merci.

Yoda_Software
Yoda_Software
Niveau 30
13 décembre 2004 à 19:16:39

C´était bien ça ?
Ça fonctionne maintenant ?

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment