Skip to main content
Skip table of contents

Recherche et remplacement binaire

La fonction « Recherche et remplacement binaire » permet aux administrateurs de corriger ou de patcher les flux de travaux d'impression avant qu'ils ne soient analysés par MyQ. Elle fonctionne en appliquant une séquence de règles de recherche et de remplacement hexadécimales à chaque travail au niveau des octets, en ciblant des commandes PDL spécifiques (PCL, PJL, PostScript) dès leur entrée dans une file d'impression. Les règles sont définies par file d'impression, exécutées en un seul passage de flux et prennent effet immédiatement à l'enregistrement — aucun redémarrage du service n'est nécessaire.

Avertissement !
Cette fonctionnalité manipule des flux d'octets bruts. Une règle mal configurée peut corrompre un travail d'impression ou le rendre impossible à imprimer. Testez-la d'abord dans une file d'impression hors production. Vous devez être à l'aise avec les données hexadécimales et le langage PDL concerné (PCL, PJL, PostScript).


Activation de la fonction « Rechercher et remplacer binaire »

Cette fonctionnalité est désactivée par défaut. Pour l'activer, procédez comme suit.

  1. Modifiez config.ini dans le répertoire des données de l'application (par défaut : C:\ProgramData\MyQ) pour y inclure ces lignes :

    CODE
    [JobProcessor]
    binaryFindReplaceEnabled=true
  2. Redémarrez tous les services MyQ à l'aide d'Easy Config.

Cela active la fonction « Recherche et remplacement binaire » et crée le répertoire BinFindReplace dans le répertoire des données d'application, s'il n'existe pas.

Pour désactiver cette fonctionnalité, définissez binaryFindReplaceEnabled=false et redémarrez tous les services MyQ.


Utilisation du fichier de règles de remplacement

Créez Config.json dans le BinFindReplace dossier situé dans le répertoire de données (par exemple, C:\ProgramData\MyQ\BinFindReplace\Config.json). Les modifications apportées au fichier prennent effet immédiatement et aucun redémarrage du service n'est nécessaire. Si le fichier n'est pas valide, une erreur est consignée et le fichier entier est ignoré.

Exemple :

CODE
{
  "queues": {
    "Default": ["FixTraySelection", "InjectWatermarkHeader"],
    "Web": ["GlobalBanner"]
  },
  "filters": {
    "FixTraySelection": {
      "find": "1B266C3148",
      "replace": "1B266C3248"
    },
    "InjectWatermarkHeader": {
      "find": "40504A4C20454E544552",
      "replace": "40504A4C2053455420555345523D2241646D696E220D0A40504A4C20454E544552"
    },
    "GlobalBanner": {
      "find": "1B452A",
      "replace": ""
    }
  }
}

Les filtres sont définis dans le Config.json fichier, avec un nom unique et une paire de chaînes de recherche et de remplacement. Pour supprimer les octets correspondants, utilisez une chaîne vide comme valeur de remplacement (comme GlobalBanner dans l’exemple).

Les filtres de chaque tableau de file d'impression sont appliqués séquentiellement, chacun opérant sur la sortie du précédent, en un seul passage sur le fichier d'impression. Des filtres supplémentaires peuvent être ajoutés sans impact sur les performances. Le résultat est transmis directement vers la sortie sans mise en mémoire tampon de l'ensemble des travaux. Un identifiant de filtre peut apparaître plusieurs fois dans un tableau de file d'impression, dans n'importe quelle combinaison avec d'autres filtres.

Référence des champs

Champ

Type

Description

queues

Objet

Associe les noms de files d'impression (sensible à la casse) à un tableau ordonné d'identifiants de filtre. Les files d'impression non répertoriées ne sont pas affectées.

filters

Objet

Définitions de filtres nommés ; chaque clé correspond à un ID de filtre et chaque valeur à une paire recherche/remplacement.

find

Chaîne

Octets hexadécimaux à rechercher. Doit être non vide et de longueur paire, et n'est pas sensible à la casse.

replace

Chaîne

Octets hexadécimaux à remplacer. Une chaîne vide supprime les octets correspondants. Doit être de longueur paire et n'est pas sensible à la casse.

Veuillez noter les exigences suivantes :

  • Caractères hexadécimaux uniquement : 0–9, a–f, A–F, insensible à la casse

  • Les chaînes find et replace doivent contenir un nombre entier d'octets (2 caractères hexadécimaux par octet)

  • La find chaîne ne peut pas être vide.

  • Les valeurs de find et replace doivent être différentes.

  • Chaque ID de filtre dans queues doit être défini dans filters.

  • Taille maximale pour chaque find et replace est de 256 Ko.

  • La sortie d'un filtre ne peut pas dépasser 64 fois la taille de son entrée.


Journalisation

Les événements liés à cette fonctionnalité apparaissent dans MyQ > Journal, identifiés par le texte « Recherche et remplacement binaire ».


Mises à jour supplémentaires de la documentation (À faire)

Configuration avancée (ajouter un nouveau paramètre)

[JobProcessor]

Paramètre

Version

Par défaut

Description

binaryFindReplaceEnabled

10.2.22+

false

Active le moteur de recherche et de remplacement binaire.

Valeurs : true, false

Le serveur lit les règles à partir de BinFindReplace\Config.json et les applique aux travaux des files d'impression correspondantes avant l'analyse. Nécessite un redémarrage du service après modification.


Notes de mise à jour

Améliorations

  • NEW FEATURE Recherche et remplacement binaires – Les administrateurs peuvent désormais définir des règles de recherche et de remplacement hexadécimales par file d'impression pour transformer les flux de travaux d'impression avant l'analyse. Utile pour corriger les commandes PCL/PJL/PostScript et les séquences d'octets spécifiques aux pilotes. Pour plus d'informations, consultez la section Recherche et remplacement binaires.


Autres résultats possibles

Section

Document

Onglet Traitement des travaux

Ajouter une référence croisée d'une ligne : « Pour les transformations de flux d'octets avant analyse, voir Recherche et remplacement binaires. »

Scripts de tâches

Remarque concernant l'ordre d'exécution : la fonction « Recherche et remplacement binaire » s'exécute avant l'analyse ; le script s'exécute après.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.