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

HugoM_0601 Messages postés 4 Statut Membre -  
mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   -

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

10 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     

    bonjour,

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

    0
  2. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     

    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
    1. Hugo
       

      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
      1. brucine Messages postés 24751 Date d'inscription   Statut Membre Dernière intervention   4 153 > Hugo
         

        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
      2. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169 > brucine Messages postés 24751 Date d'inscription   Statut Membre Dernière intervention  
         

        Bonjour Hugo,

        .

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

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

        0
      3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Hugo
         

        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
  3. Hugo
     

    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
  4. HugoM_0601 Messages postés 4 Statut Membre
     

    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     

    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
  7. HugoM_0601 Messages postés 4 Statut Membre
     

    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
  8. Phil_1857 Messages postés 1883 Date d'inscription   Statut Membre Dernière intervention   169
     

    Bonjour,

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

    0
  9. Hugo
     

    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
    1. unkonu
       

      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
  10. Hugo
     

    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
  11. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 940
     

    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