Creer exe automodifiable

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

fweil a écrit :@hardy,

C'est ce que je cherche à trouver ... mais des chercheurs qui cherchent on en trouve, alors que des chercheurs qui trouvent on en cherche encore !
Quelle phrase!!!!!!!!! :-) malheureusemant je ne peux vous aider mais je lis... et j'aprand. J'aimerais bien pouvoir utiliser les API, mais mes connaissances s'arêtent à SetupPromptReboot_() ou ShellAboutA_() :-)
hardy
Messages : 333
Inscription : mer. 02/juin/2004 13:19
Localisation : Tours

Message par hardy »

Ah, fweil est un sage !
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Mais il faut être sage pour programmer en PureBasic!!!!! :-D
Arf... fo que je m'arête alors :-)
Eureusemant que l'orthographe n'en interdit pas l'accès :-)
Sinon... comme je disais tout ça c trp compliqué pour moi.
J'suis déjà eureux d'ouvrire une fenêtre et encore... j'ai du mal! :-)
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

gansta93 a écrit :Eureusemant que l'orthographe n'en interdit pas l'accès :-)
:lol:

Chris :)
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Sinon moi j'suis exclu de la comunotée et en plus Fred me fait un procet et je prand perpet! :-)
Patrick88
Messages : 1564
Inscription : mer. 21/janv./2004 18:24

Message par Patrick88 »

salut, pour mettre un peu d'eau dans ce moulin, je repense à turbo-pascal

y'avait un configurateur qui permettait de changer les parametres directement dans l'executable, y'avait un source fournis dans la bible pc qui permettait de faire ce genre de bidouille sur ces propres programmes, mais c'était sous dos....

patrick
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Oui sous DOS c pas la même chose... un programme pouvait se tuer lui-même que ça e changait rien... DOS se contantait de marquer Plus de resources disponible ou quelque chose comme ça... fo que j'essais en PB si un EXE peut se tuer lui-même... :-)
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Re,

En voulant tenter mon expéirence, je me suis apperçu que j'avais un petit problème. Rien que pour affichier une boîte de dialogue, j'y arrive pas l'exécutable plante.
Voici mon code.

Code : Tout sélectionner

programme$=Space(#max_path)
GetModuleFileName_(0,@programme,#max_path)
MessageRequester("Essais",programme$+" va s'autodétruire!",#mb_ok|#mb_iconexclamation)
End
Quelqu'un peut-il me dire d'où vien le problème?
Je me trouve assez bête devant ça. :-)
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

gansta93 a écrit :Re,

En voulant tenter mon expéirence, je me suis apperçu que j'avais un petit problème. Rien que pour affichier une boîte de dialogue, j'y arrive pas l'exécutable plante.
Voici mon code.

Code : Tout sélectionner

programme$=Space(#max_path)
GetModuleFileName_(0,@programme,#max_path)
MessageRequester("Essais",programme$+" va s'autodétruire!",#mb_ok|#mb_iconexclamation)
End
Quelqu'un peut-il me dire d'où vien le problème?
Je me trouve assez bête devant ça. :-)
Ton buffer s'appelle Programme$, mais tu cherches à mettre une valeur dans Programme.

Alors, à ton avis, d'ou vient l'erreur ??? :wink:

Chris :)
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

C'est bien ce que je dis, je me trouve bête!!! :-)
Tu as raison... c bête de faire une variable string pour dire ensuite qu'elle est numérique pour en plus y mettre une chaîne de caractères.
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Après avoir finit de corriger mon erreure stupide faite dans ce code stupide, je vous présente le stupide résultat de ma stupide expérience :-).

Code : Tout sélectionner

programme$=Space(#max_path)
GetModuleFileName_(0,@programme$,#max_path)
MessageRequester("Essais",programme$+" va s'autodétruire!",#mb_ok|#mb_iconexclamation)
If DeleteFile(programme$)
MessageRequester("Essais",programme$+" s'est autodétruit!",#mb_ok|#mb_iconasterisk)
Else
MessageRequester("Erreure",programme$+" ne s'est pas autodétruit, probablemant parce qu'il est en cour d'utilisation!",#mb_ok|#mb_iconstop)
EndIf
End
Voila qui prove qu'il est en tout cas impossible d'effacer un exe en cour d'utilisation.
Je pense qu'il est de même pour l'écriture, mais je suis dsl se vous dire que j'ai un peu la flême. Je testerais ça suremant après avoir bu un bon coup de Volvic... :oops: la pub :-)
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Re,

Je me suis dis que j'allais faire les choses jusqu'au bout.
Suite du code cette foie prouve qu'un fichier ne peut pas être ouvert en lecture/écriture avec OpenFile() s'il est ouvert, même si je pense que vous le savez tous déjà :-).

Code : Tout sélectionner

If OpenFile(0,programme$)
FileSeek(Lof())
WriteStringN(programme$)
CloseFile(0)
MessageRequester("Essais",programme$+" c'est ouvert en lecture/écriture, et c'est peut-être inséré des données.",#mb_ok|#mb_iconasterisk)
Else
MessageRequester("Erreure",programme$+" n'a pas pu être ouvert en lecture/écriture.",#mb_ok|#mb_iconasterisk)
EndIf
Voila qui est dis sur les accès aux fichiers exécutables déjà ouverts.
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Au fait, j'ai une solution pour enregistrer dans param directement dans l'exe ici :
http://purebasic.hmt-forum.com/viewtopic.php?t=435
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Bravo.
Je vais tester ça...
Si ça marche,... je sais pas mais en tout cas je te remerci beaucoup :-)
Patrick88
Messages : 1564
Inscription : mer. 21/janv./2004 18:24

Message par Patrick88 »

Le Soldat Inconnu a écrit :Au fait, j'ai une solution pour enregistrer dans param directement dans l'exe ici :
http://purebasic.hmt-forum.com/viewtopic.php?t=435
y marche pô ton code... ôh génie ...

pat
Répondre