IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

C, Modification d'adresse RAM.


Sujet :

Windows

  1. #1
    Magrak
    Invité(e)
    Par défaut C, Modification d'adresse RAM.
    Bonjours,
    En vue d'optimiser la modifications de paramètre logiciel j'aimerais bien connaitre la syntaxe permettant de definir une valeur précise à une adresse ram, malgrès de nombreuses recherches je ne trouve toujours pas.
    Merci.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 074
    Points : 12 120
    Points
    12 120
    Par défaut
    Au vue de votre question, vous devez avoir une vue assez particulière de ce qu'est la RAM.
    Pouvez-vous développer votre besoin ?

  3. #3
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    si p est l'adresse (p est probablement de type char *), *p = 0xFF place la valeur 0xFF à l'adresse p.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 074
    Points : 12 120
    Points
    12 120
    Par défaut
    si p est l'adresse (p est probablement de type char *), *p = 0xFF place la valeur 0xFF à l'adresse p.
    p étant une adresse virtuelle dans l'espace d'adressage du processus courant, adresse qui n'est pas forcément en mémoire RAM physique.

  5. #5
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Justement, je pense que c'est de cette mémoire virtuelle qu'il est question ici.

  6. #6
    Magrak
    Invité(e)
    Par défaut
    L'un des programmes que je souhaite optimser est un par-feu. Au lieu d'avoir à le redémarrer ou à effectuer plusieurs manipulations, j'aimerais pouvoir modifié la valeur d'une des adresses pour pouvoir, dans cet exemple, activé/desactivé une règle de filtrage.

    J'ai songé aux pointeurs mais je ne sais pas comment definir une adresse précise avec une valeur précise.

  7. #7
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Cela me semble louche, mais je vais quand même te répondre. Ca serait néanmoins bien si tu pouvais nous dire quel est exactement ton but. Peut-être existerait-il des solutions plus conventionnelles.

    Si l'adresse à laquelle tu veux écrire appartient à ton processus (autrement dit si c'est toi-même qui écrit le code du pare-feu), c'est comme je te l'avais déjà indiqué. Supposons que l'adresse soit 0x004F0000. Alors c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    char * p = 0x004F0000;
    *p = 0xFF;
    Ecris (char *)0x004F0000 au lieu de 0x004F0000 tout court si les messages de warning te gènent, mais cela ne change absolument rien à ton programme. C'est obligatoire par contre si tu codes en C++ et non en C.

    Si l'adresse appartient à un autre processus (autrement dit t'es un programme étranger qui veut prendre contrôle du pare-feu), il faut utiliser la fonction WriteProcessMemory.

  8. #8
    Magrak
    Invité(e)
    Par défaut
    Merci de la reponse. Mon par-feu possède un fichier de configuration (.conf) chargé à chaque démarrage du programme et chargé en mémoire ensuite, ce qui permet, même par suppression du fichier de conserver les données (le fichier est regénéré ensuite).

    Deplus, ce par-feu (Tiny peronnal firewall), possede deux executables, l'un propre au par feu, et l'autre permettant sa configuration.

    Le but du script étant de pouvoir fermer ou bien modifier cette configuration à distance (Je configure actuellement un serveur Ftp sur une de mes machines, et laisser ouvert tout les ports que cela inclus est dangeureux (TCP, 20-21 et plage de port 5000-5100), le script serais lancé uniquement lorsque le pc hôte reçois une requête de la part d'un utilisateur précis (les ports ne s'ouvrirais et ne permettrais qu'a mon ordinateur d'avoir accés à mes données distantes.)

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 074
    Points : 12 120
    Points
    12 120
    Par défaut
    Pourquoi ne pas lancer l'exécutable de configuration avec les bonnes options en ligne de commande ?

Discussions similaires

  1. Modification des adresses DNS à distance.
    Par tbr67fr dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 23/09/2011, 13h58
  2. Modification d'adresse IP
    Par regal dans le forum Développement
    Réponses: 1
    Dernier message: 16/09/2009, 10h31
  3. interdire la modification d'adresse IP
    Par NeilaK dans le forum Sécurité
    Réponses: 10
    Dernier message: 02/02/2007, 13h12
  4. [MySQL] Modification d'adresse e-mail
    Par djinko dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 04/01/2007, 14h44
  5. Adresse des polices de caractères dans la RAM video ?
    Par Anonymous dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 27/05/2002, 17h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo