LA CLOCHE

Il y en a qui ont lu cette news avant vous.
Abonnez-vous pour recevoir les derniers articles.
E-mail
Nom
Nom de famille
Aimeriez-vous lire The Bell
Pas de spam

La plupart des utilisateurs de systèmes informatiques modernes, d'une manière ou d'une autre, sont confrontés à des programmes en cours d'exécution, qui se résument pour la plupart à l'exécution d'un fichier exécutable. En gros, dans tous les programmes, un objet au format EXE est utilisé pour lancer l'application principale. Mais ce n'est pas toujours le cas.

Dans les systèmes d'exploitation plus anciens tels que DOS ou non Windows, ces fichiers peuvent avoir une extension complètement différente, bien que le principe de démarrage reste absolument inchangé.

Exécuter un fichier exécutable : qu'est-ce que cela signifie ?

Pour bien comprendre l'essence de ce qui se passe, vous devez d'abord comprendre ce qu'est tout processus de lancement d'une application. Le même fichier exécutable de Navitel ou de tout autre programme est une sorte d'applet dans laquelle le code de démarrage est écrit, reconnu par le système d'exploitation ou des applications supplémentaires conçues à cet effet. Mais ici, il convient de comprendre que les programmes constitués exclusivement d'un fichier exécutable ne sont plus pertinents aujourd'hui. En règle générale, le package comprend également un grand nombre de composants associés sous la forme des mêmes bibliothèques dynamiques avec l'extension DLL. De même, sans eux, il n'est pas toujours possible d'exécuter un fichier exécutable.

L'essentiel est que lors du lancement du module principal du progiciel, qui consiste à démarrer le fichier EXE, certaines applications nécessitent de "charger" des modules supplémentaires, qui sont précisément les fichiers de paramètres de configuration (config) ou les mêmes bibliothèques dynamiques contenant données sur le programme.

Soit dit en passant, parfois les bibliothèques dynamiques elles-mêmes sont capables de jouer le rôle de programmes. Ainsi, par exemple, le démarrage de tout instrument VST dans un studio moderne (DAW) suit ce principe. Le programme en tant que tel sous la forme de la version autonome peut être absent, mais le plug-in sous la forme de son analogue avec l'extension DLL est reconnu par n'importe quel programme.

Programmes exécutables : Types

Mais ce n'est pas tout. L'extension des fichiers exécutables aujourd'hui n'est pas si facile à déterminer, sans parler des fichiers au format EXE ou COM. Séparément, il convient de noter non seulement les normes mentionnées ci-dessus, mais également les données d'archives.

En fait, les archives SFX (Self-Extracting) sont des données auto-extractibles basées sur l'algorithme de décompression. ce type est facile. Faites simplement un double-clic, et l'opération se fera automatiquement lors du choix de l'emplacement d'extraction. Sur les appareils mobiles, des formats tels que JAR, JAD APK, etc. sont utilisés comme programmes d'installation.

Les fichiers exécutables peuvent-ils être ouverts ?

De nombreux utilisateurs sont intéressés par la question de l'édition des fichiers exécutables. Tout le monde s'est immédiatement énervé. Le fait est que les mêmes "exécutables" sont des programmes compilés, dont le code source est généralement impossible à visualiser. Vous pouvez, bien sûr, utiliser des utilitaires comme Disassembler, mais ceux-ci, à condition que l'application ait été écrite à l'origine en C ++, peuvent ne pas donner ce résultat.

Comment faire du montage simple ?

Comme cela est déjà clair, il est impossible d'ouvrir un fichier EXE sous sa forme lisible, car le programme lui-même peut être écrit dans différents langages de programmation. Il en va de même pour les bibliothèques dynamiques. Mais les fichiers de configuration peuvent être ouverts même dans le Bloc-notes standard. Et si vous l'exécutez en tant qu'administrateur, vous pouvez même définir des restrictions d'accès à certains sites sur Internet, puis enregistrer la configuration, ce qui n'est pas possible en mode normal. Les mêmes "configs" sont éditées élémentairement.

Est-il possible de rendre n'importe quel fichier exécutable ?

En principe, tout fichier sur le disque dur est exécutable. Plus précisément, exécuter un fichier exécutable signifie lancer l'application chargée de l'ouvrir. Même en autoload, il est assez élémentaire de faire un lancement de fichier au démarrage du système.

Il suffit d'ajouter le processus à la liste et de spécifier un objet d'accompagnement qui sera chargé immédiatement (par exemple, ouverture d'un document Office). Rendre le fichier exécutable est loin d'être la chose la plus importante.

Sommaire

Ainsi, pour compléter le sujet, il convient de noter que les fichiers ou objets responsables du démarrage d'une application ne peuvent être ouverts dans la version standard qu'en double-cliquant. Mais les éditer n'est pas possible. Certes, si les programmes ont le statut de distribution gratuite sous licence GNU, il est très facile d'apporter des modifications au code de programme des applications.

Mais c'est un cas particulier, qui, en général, n'est pas lié au sujet principal. Une autre chose est le lancement d'un fichier exécutable, dont l'utilisateur n'a aucune idée. Dans ce cas, l'accent doit être mis sur les virus qui peuvent se présenter sous la forme des mêmes pièces jointes aux e-mails. Si vous voyez que le fichier joint n'a pas d'icône, n'essayez pas de l'ouvrir. Bien que cela s'applique également aux virus qui se déguisent en tels messages. Dans ce cas, le logiciel malveillant pourra exécuter assez facilement le fichier exécutable ou le code qui y est intégré, et il y aura alors une énorme pile de problèmes.

Et l'appel (lancement) du fichier exécutable dans ce cas ne peut plus dépendre de l'utilisateur lui-même, puisque le virus a envahi le système. Il ne reste plus qu'à s'appuyer sur des programmes universels sous forme de versions portables ou sur des utilitaires de modification de Rescue Disk avec chargement et vérification du système avant même le démarrage de Windows.

Le fichier exécutable en tant que tel, qui est le plus intéressant, n'est pas dans le bootloader. Mais il existe un configurateur BIN, qui est responsable du démarrage du système. De plus, dans les anciennes versions de Windows, vous pouvez également trouver des dossiers comme i386, qui contiennent des pilotes et d'autres utilitaires associés. Mais dans les nouvelles versions du système, il n'y a pas de tels objets.

Tout utilisateur d'un système informatique, d'une manière ou d'une autre, est tombé sur le concept d'un fichier de programme exécutable. Et pas toujours (bien que très souvent) les fichiers exécutables ont l'extension EXE, qui est courante pour les systèmes Windows. Pour comprendre le problème des extensions, examinons les informations générales sur ces objets et certains de leurs principaux types.

Différences entre les fichiers exécutables et les autres objets

Avant de prétendre que le fichier exécutable d'un programme a une extension d'un seul type particulier, il est nécessaire de comprendre comment distinguer un tel objet des autres.

En fait, parmi les principales différences entre les fichiers exécutables et les autres données d'information, il en existe plusieurs principales :

  • l'extension elle-même, indiquant le contenu dans le fichier du bytecode de la machine ou de la machine virtuelle ;
  • signature (contenu sous forme de séquences d'octets uniques);
  • attributs dans le système de fichiers (exécution, etc.).

Malheureusement, même si vous savez que les fichiers exécutables ont une extension de nom telle que EXE, vous ne pourrez pas afficher le contenu par des moyens normaux, car ces objets ont un contenu compilé qui, lorsqu'il est visualisé, s'affiche sous la forme d'un ensemble de caractères sans signification. . Au mieux, vous devrez utiliser les outils de désassemblage ou autre chose qui vous permet de décompiler. Mais maintenant, ce n'est pas ça.

Structure des fichiers exécutables

Quant à la construction de fichiers de ce type, ils contiennent généralement des en-têtes (exécution prévue des instructions, paramètres, formats de code), des instructions elles-mêmes (machine, source ou bytecodes).

Parfois, la structure peut inclure des descriptions de l'environnement, des données de débogage, des exigences du système d'exploitation, des listes de bibliothèques associées, des images, du son, des graphiques, des icônes de raccourci, etc. D'ailleurs, de nombreuses personnes ont probablement remarqué que, pour la plupart, dans chaque système d'exploitation, de telles un fichier a initialement une icône (à condition qu'il y travaille dès le départ).

Principe d'opération

En fait, malgré le fait que les fichiers exécutables ont un type d'extension différent, ils fonctionnent de la même manière.

Une fois lancé, le fichier exécutable est chargé dans la mémoire de l'ordinateur. Dans le même temps, l'environnement est initialisé et configuré, des bibliothèques supplémentaires sont «extraites» si leur utilisation est prévue par le programme, certaines opérations supplémentaires sont configurées et les instructions sont exécutées par les méthodes spécifiées dans le fichier.

Quelle est l'extension des fichiers de programmes exécutables ?

Nous arrivons maintenant directement à la question des extensions. Il va sans dire qu'absolument tout ne fonctionnera pas (cela prendra trop de temps). D'autre part, nous pouvons noter les plus populaires et les plus courants.

Ainsi, selon le type de contenu, l'extension est définie. Par exemple, sous Windows, les fichiers exécutables les plus courants portent l'extension EXE. Ceci s'applique à tous les programmes conçus pour fonctionner sur ces systèmes d'exploitation. Ces objets contiennent des fichiers BIN très similaires (contenant également de tels codes).

Les objets batch tels que CMD, BAT et COM sont un autre type d'exécutable, le premier type étant Windows et les deuxième et troisième étant les systèmes DOS.

Probablement, beaucoup ont rencontré à la fois les fichiers MSI et MSU. Il peut s'agir d'un programme d'installation Windows "natif" ou d'un programme d'installation de mise à jour système.

Entre autres choses, les scripts et les macros (VB, VBS, VBE, SCR, JS, JSE) forment une catégorie à part. Il existe encore souvent des fichiers comme JAR et JAD, conçus pour installer des applications sur des gadgets mobiles ou pour les utiliser dans un environnement JAVA. Tous ces objets dans le contenu n'ont plus de codes machine, mais des codes de machines virtuelles.

Quelle extension les fichiers exécutables ont-ils sur différents systèmes ?

Si vous regardez attentivement, vous remarquerez que dans certains systèmes, il existe des composants assez spécifiques. Par exemple, Windows a une catégorie spéciale de composants exécutables (PS1 pour l'exécutable PowerShell, PIF pour les informations sur l'application, WSF pour le fichier de script, etc.).

En général, dans n'importe quel système, vous pouvez trouver des composants standard et spéciaux. Cependant, il existe certains formats courants (par exemple, HTA - un document HTML exécutable) qui fonctionnent partout et quel que soit le système d'exploitation utilisé.

Comme pour les autres systèmes, par exemple, dans les Mac, les fichiers exécutables ont l'extension APP s'ils sont des programmes, et PKG s'ils sont des distributions.

Mais avec les systèmes Linux, la situation est quelque peu différente. Le fait est qu'ils n'ont pas le concept d'extension en tant que tel. Un fichier exécutable ne peut être reconnu que par des attributs (caché, en lecture seule, système, etc.). Ainsi, même le problème de changer les extensions pour exécuter ou lire le fichier que vous recherchez disparaît.

Cependant, dans n'importe quel système ou même dans les gadgets mobiles, vous pouvez trouver un grand nombre d'objets de ce type. Vous n'avez pas besoin d'aller loin. Dans le même système d'exploitation Android, le fichier exécutable du programme d'installation a l'extension APK, et dans les appareils "apple", ce sont des fichiers IPA.

Conclusion

C'est tout en un mot sur les extensions de fichiers exécutables. Bien sûr, dans ce cas, l'accent était principalement mis sur les objets présents dans les systèmes Windows, et le reste a été abordé en passant et, pour ainsi dire, pour le développement général. Et, comme il est déjà clair, la variété des objets de type exécutable est si grande qu'il n'est tout simplement pas possible d'apporter une sorte de tableau récapitulatif indiquant absolument toutes les extensions, nous nous sommes donc limités aux formats les plus courants.

Le système d'exploitation Linux, contrairement à Windows, détermine quels fichiers sont des programmes non par extension, mais par un indicateur exécutable spécial. Chaque fichier a trois drapeaux principaux, lecture, écriture et exécution. Ils déterminent ce que le système peut faire avec ce fichier.

Lorsque vous téléchargez divers programmes d'installation de logiciels à partir d'Internet ou que vous les écrivez dans un éditeur de texte, ils sont définis sur les indicateurs par défaut en lecture seule et en écriture seule. Vous ne pourrez pas exécuter un tel fichier en tant que programme, vous devez en faire autre chose. Dans cet article, nous verrons comment rendre un fichier exécutable sous Linux.

Beaucoup a déjà été écrit sur la façon de définir le drapeau exécutable. Mais qu'arrive-t-il au fichier pendant ce temps, qu'est-ce que l'exécutabilité et comment ça marche ?

Un programme est un ensemble d'instructions que le processeur exécute tour à tour sur des données afin d'obtenir un résultat précis. Mais vous le savez probablement déjà.

En fait, pour le processeur, il n'y a pas de différence entre les données et les instructions. Ceux-ci et d'autres sont constitués d'octets, en d'autres termes, de nombres. Il était autrefois convenu que certaines combinaisons de nombres signifieraient telle ou telle action du processeur, mais à tous autres égards, il s'agit des mêmes données. Par conséquent, pour le processeur, il n'y a aucune différence entre ce qu'il faut exécuter - un fichier exécutable Linux ou un fichier texte brut. Les deux peuvent être exécutés avec succès, seulement dans la deuxième version, les instructions n'ont aucun sens.

Pour que le système puisse déterminer quels fichiers doivent être exécutés et lesquels ne le sont pas, le drapeau exécutable a été inventé. En fait, le drapeau exécutable est quelques octets dans le système de fichiers qui indiquent si le fichier doit être exécuté ou non, le contenu du fichier lui-même ne change en rien. Avec les scripts, tout fonctionne exactement de la même manière, seules les commandes du fichier sont exécutées non pas par le processeur, mais par l'interpréteur, par exemple, dans les scripts bash, le shell bash lui-même. Oui, et les programmes ordinaires ont également leur propre chargeur de démarrage - c'est ld-linux.so.2.

Comment rendre un fichier exécutable sous Linux ?

Sur le système d'exploitation Linux, l'utilitaire chmod est utilisé pour gérer les indicateurs de fichier. Syntaxe d'appel d'utilitaire :

  • Catégorie- des drapeaux peuvent être définis pour trois catégories : propriétaire du fichier, groupe de fichiers et tous les autres utilisateurs. Dans la commande, ils sont indiqués par les caractères u (utilisateur) g (groupe) o (autre), respectivement.
  • Action- peut être + (plus), ce qui signifierait mettre le drapeau ou - (moins) décrocher le drapeau.
  • Drapeau- l'un des drapeaux disponibles - r (lecture), w (écriture), x (exécution).

Par exemple, pour créer un script exécutable sous linux pour le propriétaire du fichier, lancez simplement :

chmod u+x nom de fichier

Cela suffit dans la plupart des cas, mais si nous voulons que d'autres utilisateurs puissent exécuter le fichier, nous devons également spécifier d'autres catégories : g et o:

chmod ugo+x nom de fichier

Vous pouvez afficher les drapeaux dans le terminal à l'aide de l'utilitaire ls :

ls -l répertoire_avec_fichiers

Cela signifie que tous les drapeaux sont activés pour toutes les catégories. Les premiers rwx sont les drapeaux du propriétaire, les seconds sont les groupes et le troisième est pour tous les autres. Si le drapeau n'est pas défini, un tiret apparaîtra à sa place.

La suppression du drapeau exécutable est très simple. La même commande est utilisée uniquement avec un signe moins :

nom de fichier chmod u-x

Comment définir le drapeau exécutable dans l'interface graphique

Vous pouvez rendre un fichier exécutable sur Linux non seulement via le terminal. Cette fonctionnalité est disponible dans tous les gestionnaires de fichiers. Cela peut être plus facile pour vous au début. Prenons l'exemple du gestionnaire de fichiers GNOME, Nautilus. Faites un clic droit sur notre programme ou fichier de script pour ouvrir le menu contextuel, puis sélectionnez les propriétés :

Allez ensuite dans l'onglet Autorisations et cochez la case Autoriser le fichier à s'exécuter en tant que programme:

Une fois terminé, l'exécutable Linux peut être lancé par le système, directement depuis le gestionnaire de fichiers.

conclusion

C'est tout, maintenant vous savez comment rendre un fichier exécutable sous Linux. Et si vous avez besoin d'exécuter un script ou un programme d'installation à partir d'Internet, vous n'aurez aucun problème. Si vous avez des questions, posez-les dans les commentaires !

De nombreux utilisateurs de systèmes informatiques ont probablement rencontré le concept d'un fichier de programme exécutable à un degré ou à un autre. Les fichiers exécutables n'ont pas toujours, mais assez souvent, l'extension EXE, qui est généralement acceptée pour les systèmes d'exploitation de la famille Windows. Pour faire la lumière sur le sujet des extensions, nous allons examiner quelques informations générales sur ces objets, ainsi que certains types d'extensions de base.

Comment les fichiers exécutables diffèrent des autres objets

Avant d'affirmer qu'un fichier exécutable de programme ne peut avoir qu'une extension d'un type particulier, il est nécessaire de comprendre comment distinguer un tel objet des autres. Les principales différences entre les fichiers exécutables et les autres données d'information incluent les facteurs suivants : l'extension elle-même, qui indique le contenu dans le fichier du code machine ou du code d'octet de la machine virtuelle, la signature et les attributs dans le système de fichiers . Cependant, même si l'utilisateur sait que les fichiers exécutables ont une extension de nom de type EXE, les moyens habituels ne pourront pas afficher le contenu, car ces objets ont un contenu compilé qui s'affiche sous la forme d'un ensemble de caractères sans signification lors de la visualisation. En général, l'utilisateur devra utiliser l'outil Disassembler, ou quelque chose de similaire, pour permettre la décompilation. Mais ce n'est pas de cela dont nous parlons.

Exécutables : structure

Quant à la construction des fichiers exécutables, ils doivent contenir des en-têtes (l'exécution prévue des instructions, des paramètres et des formats de code) et les instructions elles-mêmes (source, machine ou bytecodes). Dans certains cas, la structure peut inclure des données de débogage, des descriptions d'environnement, des exigences du système d'exploitation, des listes de bibliothèques pertinentes, du son, des graphiques, des images, des icônes de raccourci, etc. Beaucoup d'entre vous ont probablement prêté attention au fait que, pour la plupart, chacun de ces fichiers dans le système d'exploitation a initialement une icône.

Principe d'opération

Bien que les fichiers exécutables puissent avoir différents types d'extensions, ils fonctionnent sur le même principe. Le fichier exécutable est chargé dans la mémoire de l'ordinateur au démarrage. En même temps, l'environnement est configuré et initialisé, des bibliothèques supplémentaires sont extraites si leur utilisation est fournie par le programme. A ce stade également, certaines opérations supplémentaires sont configurées et les instructions sont exécutées par les méthodes qui sont écrites directement dans le fichier.

Fichiers exécutables du programme : quelle extension ont-ils ?

Passons maintenant à la question des extensions. Bien sûr, cela ne fonctionnera pas de considérer absolument tous les types, cela prendra très longtemps. Nous ne noterons que les options les plus courantes et les plus populaires. Ainsi, l'extension est définie en fonction du type de contenu. Ainsi, par exemple, dans un système d'exploitation comme Windows, les fichiers exécutables les plus courants portent l'extension EXE. Cela s'applique à tous les programmes conçus pour fonctionner dans l'environnement de ces systèmes d'exploitation. Ces objets contiennent des codes machine. Les fichiers BIN sont très similaires. Les fichiers batch tels que CMD, BAT et COM sont un autre type de fichiers exécutables. Le premier type dans ce cas est un fichier de commandes Windows. Les fichiers des deuxième et troisième types appartiennent aux systèmes d'exploitation de la famille DOS. Beaucoup d'entre vous ont probablement rencontré des fichiers comme MSI et MSU. Il peut s'agir d'un programme d'installation de mise à jour système ou d'un programme d'installation natif pour le système d'exploitation Windows. Une catégorie distincte de fichiers sont les macros et les scripts. Ce sont des fichiers avec les extensions JSE, JS, SCR, VBE, VBS, VB. Souvent, il existe également des fichiers JAD et JAR, qui sont conçus pour installer des applications sur des appareils mobiles ou pour une utilisation dans un environnement JAVA. Dans leur contenu, de tels objets n'ont plus de codes machines, mais des codes de machines virtuelles.

Quelle est l'extension des fichiers exécutables dans différents systèmes d'exploitation ?

Si vous regardez attentivement, vous remarquerez que dans certains systèmes d'exploitation, il existe des composants assez spécifiques. Par exemple, le système d'exploitation Windows a une catégorie spéciale de fichiers exécutables. En général, dans n'importe quel système d'exploitation, vous pouvez trouver des composants standard et spéciaux. Cependant, il existe certains formats courants, tels que HTA, un document HTML exécutable. Ils fonctionnent presque partout, quel que soit le type de système d'exploitation utilisé. Comme pour les autres types de systèmes, par exemple, dans les fichiers exécutables "coquelicots", les fichiers exécutables ont l'extension APP pour les programmes et PKG pour les distributions. Dans les systèmes d'exploitation de la famille Linux, les choses sont un peu différentes. Le problème est que dans de tels systèmes d'exploitation, le concept d'extension est complètement absent. Vous pouvez reconnaître un fichier exécutable par ses attributs, tels que système, masqué, en lecture seule, etc. En conséquence, le problème de changement d'extension pour exécuter ou lire le fichier que vous recherchez disparaît. Cependant, dans n'importe quel système d'exploitation, même sur les appareils mobiles, vous pouvez trouver un grand nombre d'objets de ce type. Vous n'avez pas besoin d'aller loin. Sur le même système d'exploitation de la famille Android, le fichier exécutable du programme d'installation porte l'extension APK. Sur les appareils Apple, les fichiers exécutables portent l'extension IPA.

Conclusion

Résumons notre petite revue sur l'extension des fichiers exécutables. Dans ce cas, l'accent a été mis principalement sur les objets présents dans les systèmes d'exploitation de la famille Windows. Le reste des systèmes d'exploitation n'a été touché qu'en passant pour le développement général. Comme il est déjà devenu clair, la variété des fichiers exécutables est très grande. Il est impossible de donner une sorte de tableau croisé dynamique indiquant absolument tous les types d'extensions. Par conséquent, dans cet article, nous nous sommes limités aux seuls formats les plus courants.

Vkontakte est sans aucun doute un réseau social très courant où les gens non seulement correspondent entre eux, mais échangent également divers fichiers. À cet égard, de nombreux utilisateurs de ce réseau social rencontrent souvent un problème lorsque, en essayant de joindre un fichier à un message, une erreur apparaît avec le texte « Échec du téléchargement du fichier. Le fichier ne doit pas être exécutable et sa taille ne doit pas dépasser 200 Mo."

Si tout est clair avec la taille du fichier, tout le monde ne sait pas ce que signifie "Le fichier ne doit pas être exécutable".

Dans cet article, nous expliquerons ce qu'est un fichier exécutable et ce qu'il faut faire pour contourner cet avertissement.

Fichier exécutable - qu'est-ce que c'est ?

Un fichier exécutable est un fichier qui contient un ensemble de commandes prêtes à l'emploi pour l'ordinateur, qui peuvent être immédiatement chargées en mémoire et lancées.

En règle générale, il s'agit de fichiers avec l'extension .exe, .bat, .com.

De plus, parfois, VKontakte ne veut pas télécharger les archives dans lesquelles les fichiers .exe sont compressés, se référant à la même erreur.

Cela est dû à des problèmes de sécurité, car les fichiers .exe sont les premiers en popularité dans le classement de l'exposition aux virus. Et afin de réduire au moins d'une manière ou d'une autre le risque de propagation de virus informatiques via VKontakte, les développeurs ont décidé d'interdire simplement le transfert entre eux du type de fichier le plus sensible - un fichier exécutable.

Comment contourner l'erreur ?

Il est assez facile de contourner cette limitation. Il vous suffit d'envoyer l'une des extensions autorisées, par exemple .doc, au destinataire et de lui dire de remplacer l'extension par celle que le fichier avait à l'origine après le téléchargement du fichier.

Modification de l'extension de fichier

Parmi les méthodes alternatives, on peut noter le téléchargement d'un fichier qui refuse d'être téléchargé par VKontakte sur n'importe quel stockage cloud tel que le disque Yandex ou le disque Google, puis l'envoi d'un lien vers celui-ci au destinataire VKontakte.


La meilleure façon de remercier l'auteur de l'article est de reposter sur votre page

LA CLOCHE

Il y en a qui ont lu cette news avant vous.
Abonnez-vous pour recevoir les derniers articles.
E-mail
Nom
Nom de famille
Aimeriez-vous lire The Bell
Pas de spam