Menu

Message d'erreur "Instruction privilegiee" [Résolu]

Messages postés
131
Date d'inscription
dimanche 29 octobre 2006
Dernière intervention
30 novembre 2018
- - Dernière réponse : fredelem
Messages postés
131
Date d'inscription
dimanche 29 octobre 2006
Dernière intervention
30 novembre 2018
- 15 sept. 2018 à 21:32
Bonjour,

Je travaille en Windows 10 avec Delphi7.

Je veux écrire un programme qui me permette de lire la mémoire CMOS. J'ai récupéré sur Internet un petit
programme qui commence par

FOR I := 0 TO 127 DO
Begin
Asm
Cli // Disable interrupts
Mov Al, I // Move index address
Out $70,Al // Copy address to CMOS register
End;

A la compilation, tout se passe bien. Donc, il n'y a pas d'erreur dans ce programme.

Mais à l'exécution, l'instruction "CLI" provoque un message d'erreur: "Instruction privilégiée". Et si je la supprime, c'est l'instruction "OUT" qui provoque le même message.

Quelqu'un voit-il comment je pourrais devenir assez privilégié pour que ça marche ?
(J'ai essayé de lancer le .Exe obtenu après compilation en tant qu'administrateur mais ça ne donne rien)

Fred







--
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
14386
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
20 février 2019
215
1
Merci
Sans connaitre précisément le sujet, les OS de base Windows NT (2000, XP et +) contrôles les accès direct matériel.

Par exemple, il est impossible d'accéder directement au port COM d'une machine, il faut forcément passer par un driver.

Dans ton cas, je suppose que c'est la même chose, tu tentes d'accéder à une données en direct et l'OS te refuse l'accès.
Ce ne sera pas un droit d'admin qui te permettra de passer autre cette protection si c’est le cas.

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 57021 internautes nous ont dit merci ce mois-ci

fredelem
Messages postés
131
Date d'inscription
dimanche 29 octobre 2006
Dernière intervention
30 novembre 2018
-
Merci, je pensais bien qu'il fallait obtenir la permission de jouer avec les interruptions et les ports. Et pour cela, il faut sans doute faire intervenir un truc compliqué que j'aurais du mal à trouver.

Le programme que j'avais trouvé sur Internet n'était pas fait pour Delphi mais pour Turbo-Pascal. -

Travailler en Turbo-Pascal avec Windows 10, c'est la super-galère. J'ai préféré booter en mini-windows XP grâce à HirenBoot-CD que j'apprécie beaucoup. J'ai réussi à compiler le programme avec Turbo-Pascal et j'ai ce que je veux. Merci pour l'aide. Problème résolu !

. Fred
Commenter la réponse de NHenry