Partager un code python sans donner accès à son code source

Fermé
HugoM_0601 Messages postés 4 Date d'inscription vendredi 9 septembre 2022 Statut Membre Dernière intervention 19 septembre 2022 - Modifié le 21 sept. 2022 à 11:32
mamiemando Messages postés 33459 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 janvier 2025 - 21 sept. 2022 à 11:38

Bonsoir, 

J'ai créer un fichier python pour calculer l'IMC. J'ai ami qui aimerait récupérer le programme, sauf que je ne veux pas qu'il ait accès au code. J'aimerais que lorsque je lui envoie, il ait juste besoin de cliquer sur l'icône du fichier pour que cela lance le script.

Merci d'avance pour vos réponses

Cordialement 
Hugo

A voir également:

10 réponses

yg_be Messages postés 23417 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 5 janvier 2025 Ambassadeur 1 557
9 sept. 2022 à 20:26

bonjour,

peut-être en créant un exe à partir de la source python?
Essaie une recherche avec ces mots.

0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
9 sept. 2022 à 20:31

Bonsoir,

Installe le module pyinstaller, il te permettra de créer un exécutable à partir de ton programme

Tu n'as donc pas à communiquer le source, mais simplement ce fichier exe

De plus, ton ami n'a même pas besoin d'avoir l'environnement installé Python sur sa machine

tout ce qui est nécessaire est inclus avec l'exe

0

Bonjour, 

désolé pour la réponse tardive, je n’avais pas reçu la notification. Merci, je vais essayé quand je rentre chez moi, mais le .exe sur Mac ne fonctionne pas donc je pense que cela ne va pas fonctionner, j’essaye quand je rentre et je vous recontacte pour vous en informer. 
 

encore merci et bon bonne journée 

0
brucine Messages postés 18501 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 8 janvier 2025 2 761 > Hugo
15 sept. 2022 à 07:53

Bonjour,

Cela dit, le calcul de l'IMC, c'est vraiment de l'arithmétique très basique, et donc je suppose le script Python (que je ne pratique pas) qui va avec aussi.

Pourquoi vouloir le protéger?

0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168 > brucine Messages postés 18501 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 8 janvier 2025
Modifié le 15 sept. 2022 à 11:58

Bonjour Hugo,

.

Pourquoi dis-tu "le .exe sur Mac ne fonctionne pas" ?

Tu as déjà installé pyinstaller et créé l'exe ?

0
yg_be Messages postés 23417 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 5 janvier 2025 1 557 > Hugo
17 sept. 2022 à 19:36

Je pense qu'il faut utiliser pyinstaller sous Windows pour créer un exécutable pour Windows, et l'utiliser sur un Mac pour créer un exécutable pour Mac.

0

Non, mais quand je renomme un fichier .exe, il y a un message d’erreur qui marque que Mac ne traite pas les fichiers Windows 

0
HugoM_0601 Messages postés 4 Date d'inscription vendredi 9 septembre 2022 Statut Membre Dernière intervention 19 septembre 2022
17 sept. 2022 à 14:53

Rebonjour, 

avec pyinstaller, quand j'ouvre le fichier sur mon ordinateur, cela fonctionne mais quand je le transfert (avec tous les rackets créé par pyinstaller, cela ne fonctionne pas et écrit dans le terminal : logout opération terminée. Et rien d'autre ne se passe. Je voulais du coup vous demander si j'avais mal fait quelque chose ou pas.

merci pour votre réponse 

Hugo

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 17 sept. 2022 à 18:46

Bonjour,

Vu d'ici, pas facile de savoir si tu as mal fait quelque chose ou pas !

Moi, je suis sur Windows

Pour créer un .exe à partir d'un fichier .py :

j'ouvre une fenêtre de commande

je me place dans le répertoire du fichier .py

je lance ma commande "C:\Program Files (x86)\Python\Scripts\pyinstaller" toto.py

(éventuellement avec une option si mon programme importe des modules d'un autre répertoire)

-> pyinstaller me crée 2 répertoires dont un nommé dist qui contient toto.exe et d'autres fichiers

nécessaires à l'exécution

C'est ce répertoire qu'il faut donner à un autre utilisateur pour qu'il exécute toto.exe

0
HugoM_0601 Messages postés 4 Date d'inscription vendredi 9 septembre 2022 Statut Membre Dernière intervention 19 septembre 2022
17 sept. 2022 à 23:24

Quand j'utilise la commande : "pyinstaller /User/monnom/Projet\ Programmation/CalculateurIMCtest.py". il me créer bien mon fichier dist avec tout le reste (.spec et un fichier build). Moi je peux utiliser le programme quand je clique sur CalculateurIMCtest (pas le dossier mais le fichier d'exécution) par contre, dés que j'essaye de l'ouvrir sur un autre ordinateur, il ne fonctionne pas.

Voici quelque image pour vous montrer.

0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
18 sept. 2022 à 10:49

Bonjour,

Et pourtant, tu as bien copié le dossier dist sur l'autre ordi, pas seulement l'exe ...

0

Bonjour,

oui c’est pour cela que je ne comprends pas pourquoi cela ne fonctionne pas sur l’autre ordi. Si quelqu’un a une réponse à cette question, je suis preneur. 

0

Bonsoir, n'y a-t-il aucune info lorsque tu lances ton exécutable dans un terminal ?

Sans en passer par gcc, je pense que doit y avoir un moyen plus simple.

.

Sinon, peut-être tenter avec un autre créateur d'exécutable tel que platypus exclusivement destiné à macos.

.

https://github.com/sveinbjornt/Platypus

0

Je souhaite l’exporter sous Mac, mais je veux qu’il soit accessible à tout le monde (windows, Linux, Mac) et j’aimerais aussi pouvoir l’exporter pour mon iPad et mon iPhone. Mais malheureusement les fichiers s’envoient en .zip. 

0
mamiemando Messages postés 33459 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 janvier 2025 7 813
21 sept. 2022 à 11:38

Bonjour Hugo

Sous windows, tu peux faire un exe avec pyinstaller.

Sous Linux et MacOS, il faut que wine (ou une surcouche comme playonlinux) soit installé pour pouvoir exécuter un exe. Si tu veux t'en abstraire, il faudrait partir sur du cython (voir cette discussion).

Bonne chance

0