Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

CoqBlog

.NET is good :-)
{ Blog de Gaël Covain }

Actualités

A propos des fichiers “bloqués”

Vous avez tous déjà vu ce type de dialogue au lancement d’un fichier exécutable transféré depuis un média distant (vers un média NTFS), notamment lors d’un téléchargement avec Internet Explorer ou tout autre logiciel utilisant l’Attachment Manager disponible sous Windows XP SP2 et supérieurs (Firefox sous Windows semble en faire usage, du moins depuis sa version 3) :

Open File - Security Warning (Windows XP)

Vous pouvez aussi voir un fichier (CHM par exemple) produisant un résultat assez anormal.

Vous savez sans doute que dans ce cas là vous devez débloquer explicitement l’accès à ce fichier via le bouton prévu à cet effet dans le dialogue de propriété du fichier :

 Dialogue de propriétés d'un fichier PDF

A ma connaissance, la seule action effectuée consiste à supprimer l’ADS (Alternate Data Stream) “Zone.Identifier” positionnée sur le fichier. Cet ADS sert à persister la zone de provenance du fichier afin de permettre au système de déterminer le comportement requis au moment de l’accès au fichier.

Si vous utilisez Windows Vista et supérieurs vous pouvez voir ces ADS sans outils tiers, la commande dir supporte ceci via le switch /R :

C:\temp>dir *.* /R
Volume in drive C has no label.
Volume Serial Number is A835-8A58

Directory of C:\temp

05/10/2008  13:35    <DIR>          .
05/10/2008  13:35    <DIR>          ..
05/10/2008  12:59           330 969 File.pdf
                                 26 File.pdf:Zone.Identifier:$DATA
05/10/2008  12:59           330 969 File_unblocked.pdf
               2 File(s)        661 938 bytes
               2 Dir(s)   3 215 982 592 bytes free

 

Sur les versions précédentes de Windows, vous pouvez utiliser l’outil Streams de Mark Russinovich :

C:\temp>streams -s *.*

Streams v1.56 - Enumerate alternate NTFS data streams
Copyright (C) 1999-2007 Mark Russinovich
Sysinternals - www.sysinternals.com

C:\temp\File.pdf:
   :Zone.Identifier:$DATA       26

Si vous désirez jeter un oeil au contenu de ce flux, vous pouvez utiliser tout simplement Notepad (ou tout autre éditeur supportant l’ouverture d’ADS) :

C:\temp>notepad File.pdf:Zone.Identifier

Notepad : contenu de File.pdf:Zone.Identifier

Ou “more” si vous préférez rester en ligne de commande (“type” ne supporte pas les ADS) :

C:\temp>more < File.pdf:Zone.Identifier
[ZoneTransfer]
ZoneId=3

La valeur 3 correspond à la zone “Internet”.

La présence de ce flux de données alternatif Zone.Identifier indique donc le blocage potentiel (suivant la valeur de ZoneId) au niveau de l’exécution ou de l’accès.

 

Pour approfondir :

Marc van Orsouw avait abordé le sujet et fourni une solution pour l’utilisation via PowerShell reposant sur la bibliothèque de classes de Richard Deeming, mais avec sa mise à jour vers .NET 3.5 elle nécessitera probablement quelques retouches : PowerShell : Accessing alternative data-streams of files on an NTFS volume ...

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: dimanche 5 octobre 2008 16:36 par coq

Commentaires

ebartsoft a dit :

# octobre 5, 2008 21:39
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- 3 articles sur SQL Server (Data Structures, Scans and seeks, Data access strategies) par Code is poetry le il y a 6 heures et 21 minutes

- Mais que peut bien faire un MVP quand il ne code pas ??? par .net is good... C# is better ;) le il y a 8 heures et 47 minutes

- PowerShell : Comment exécuter un script PS depuis une fenêtre MS DOS ou Scheduled Task par Blog Technique de Romelard Fabrice le il y a 8 heures et 56 minutes

- EDM Designer par Matthieu MEZIL le il y a 12 heures et 25 minutes

- Small basic - un projet intéressant par Pierrick's Blog le 01-06-2009, 17:11

- SharePoint 2007 : Liste Personnalisée, Colonnes de Site et Menu Contextuel par Philippe Sentenac [MVP SharePoint] le 01-06-2009, 16:38

- [WPF/Silverlight] Ternary Converters par NeuroCypher's Blog le 01-06-2009, 15:18

- Bonne année, bonne santé et surtout de bons PowerPoint !!! par The Mit's Blog le 01-06-2009, 14:38

- Suggestions Visual Studio par BruNews le 01-06-2009, 12:06

- C++ VS 2010 et développement parallèle par Michel Perfetti [Miiitch] le 01-06-2009, 11:00