Au Fil du Temps
//------------------ [ SHELL.HTML ] (VBSCRIPT / JAVASCRIPT) ------------------
// - Appel des boîtes de dialogues Systèmes :
// 1. Sélection de répertoire
// 2. Sélection de fichier
// - Informations détaillées sur l'élément sélectionné
// (type,date de création...,attributs)
// - Lecture séquentiel ou en mode bloc [mode raw]
// 1. Appel à la fonction OpenFileBin de la DLL ActiveX (AuFilDuTemps.dll)
// Rem: Aprés inscription de la DLL, le ProgId est enregistré comme
// "AuFilDuTemps.SystemFile"
// - Affichage hexadécimal. Limitation à 8Ko
//-----------------------------------------------------------------------------
<HTML>
<HEAD>
<TITLE>Au Fil Du Temps - Fonctions Systèmes - [ www.aufildutemps.new.fr]</TITLE>
<META name=VI60_defaultClientScript content=JavaScript>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Author" LANG="fr" CONTENT="Au Fil Du Temps">
<SCRIPT type="text/javascript" language="javascript"></SCRIPT>
<SCRIPT type="text/vbscript" language="vbscript">
//------------------------- CnvIntToBin(nombre) -----------------------
// Description:
// Conversion binaire sur 32 bits
// L'utilisation de cette fonction est utile dans d'autre contexte
// sinon object.toString(2) en javascript suffit
// Entrée : Nombre décimal
// Sortie : chaîne binaire
//---------------------------------------------------------------------
Function CnvIntToBin(intNB)
Dim lngI, lngJ, lngk
Dim MOT
Dim strBit
lngI = intNB
If intNB <= (2 ^ 15) - 1 Then
MOT = 15
Else
If intNB <= (2 ^ 31) - 1 Then
MOT = 30 '32 ième bit pour le signe
Else
CnvIntToBin = Null
Exit Function
End If
End If
For lngk = MOT To 0 Step -1
lngJ = lngI And (2 ^ lngk)
If lngJ = 0 Then
strBit = strBit & "0"
Else
strBit = strBit & "1"
End If
Next
CnvIntToBin = strBit
End Function
sub ListstrHex(strHex)
divopen.innerHTML ="<BR>"
For i = 1 To Len(strHex) - 1
If (i Mod 48 = 0) Then '48 = (16 * 2car/oct) + 16 espaces 00_01_....15_
divopen.innerHTML = divopen.innerHTML & "<BR>"
End If
divopen.innerHTML = divopen.innerHTML & Mid(strHex, i, 1)
Next
end sub
</SCRIPT>
<SCRIPT type="text/javascript" language="javascript" >
var strFileName = ""; // Nom de fichier ou répertoire sélectionner
var strText = ""; // contenu du fichier au format Texte
var strBin = ""; // contenu du fichier au format Binaire/hexa
var blnBin = false; // Booleen pour une permutation Text/Hexa
var blnText = false; // Booleen pour une permutation Text/Hexa
var FileSize = 0; // Taille du fichier ou répertoire
var colonne = 24; // colonne = octet pour l'affichage hexadécimal
var octet = 24; // octet = colonne pour l'affichage hexadécimal
var offset = 1; // position du curseur dans le fichier
var NBLIGNE = 1; // Déterminer en fonction de FileSize et colonne
var tm = 0; // timeout
var CRLF = "\n"; //Retour chariot pour les .innerText
CRLF.replace(/\n/g," ")
// --------------------------- Fill0(String) ---------------------------------
// Description:
// Remplissage avec des "0" pour les offsets en Hexadécimal (8 chiffres)
// ---------------------------------------------------------------------------
function Fill0(strOffset)
{
var lenOffset = 8 - strOffset.length;
var str0 = "";
for(var i=0;i<lenOffset;i++ )
str0 = str0 + "0";
var str = str0.concat(strOffset)
return str;
}
//------------------------- GetOs() -----------------------
// Description:
// Détection du système d'exploitation Window 2000 ou XP
// Appeler par la fontion btnFile pour
// la commonDialog sous XP
// Entree : -
// Sortie : type OS : W2K -> NT 5.0 XP -> NT 5.1
//---------------------------------------------------------
function GetOS()
{
var OS = {"NT 5.0":"W2K","NT 5.1":"XP"};
var strOS = "";
var navigateur;
var strUA ="";
navigateur = new Array("NT 5.0","NT 5.1");
strUA = window.navigator.userAgent ;
for(var indice=0;indice < navigateur.length ; indice++)
{
switch(navigateur[indice])
{
case "NT 5.0": // Windows 2000
strOS = strUA.match(/NT 5.0/i) + ""; // object to string
break;
case "NT 5.1": // Windows XP
strOS = strUA.match(/NT 5.1/i) + "";
break;
}
if(navigateur[indice] == strOS)
return OS[strOS];
}
return ""
}
function GetIdFileAttributes(iFileAttr,constante)
{
if((iFileAttr & constante) == constante)
return "x";
else
return ".";
}
function FormatString(str,nb,car)
{
var espace ="";
for(var i = str.length;i<nb;i++)
espace += car;
str += espace;
return espace;
}
//------------------------- UTF(strFileNAme) -----------------------
// Description :
// - Détermine si le type de fichier est unicode
// Entree : -
// Sortie : une chaine identifiant le fichier
//------------------------------------------------------------------
function UTF(strFileName)
{
try{
var AFT = new ActiveXObject("AuFilDuTemps.SystemFile") // lecture binaire une seule fois
var strUTF16 = AFT.OpenFileBin(strFileName,1,2,2);
var strUTF32 = AFT.OpenFileBin(strFileName,1,4,4);
strUTF16 = strUTF16.substring(2,strUTF16.length );
strUTF32 = strUTF32.substring(2,strUTF32.length );
var AFT = null;
/* 00 00 FE FF UTF-32, big-endian
FF FE 00 00 UTF-32, little-endian
FE FF UTF-16, big-endian
FF FE UTF-16, little-endian
EF BB BF UTF-8
*/
if(strUTF32.match(/EF BB BF/i) == "EF BB BF") return "Fichier UNICODE UTF-8";
if(strUTF32.match(/FF FE 00 00/i) == "FF FE 00 00") return "Fichier UNICODE UTF-32 Little Endian";
if(strUTF32.match(/FF FE 00 00/i) == "00 00 FE FF") return "Fichier UNICODE UTF-32 Big Endian";
if(strUTF16.match(/FF FE/i) == "FF FE") return "Fichier UNICODE UTF-16 Little Endian";
if(strUTF16.match(/FE FF/i) == "FE FF") return "Fichier UNICODE UTF-16 Big Endian";
}catch(e){};
return ""; // chaine vide si non UTF
}
//-------------------------------- [ OpenPath(strPath,div) ] -------------------------
// Description :
// -
// strPath = chemin pour un répertoire - Informations détaillées
// strPath = chemin pour fichier - Informations détaillées + lecture du contenu
//------------------------------------------------------------------------------------
function OpenPath(strPath,div)
{
var blnDirFile = objFS.FolderExists(strPath); // true = Directory
if(blnDirFile == true)
var iFile = objFS.GetFolder(strPath.replace(/%20/ig," "));
else
var iFile = objFS.GetFile(strPath.replace(/%20/ig," "));
var strHex ="";
var strLineHex="";
var DrapInnerHTML = false;
var strPathVersion = objFS.GetFileVersion(strPath);
var strPathData="";
var enumFileAttr = iFile.Attributes ;
var strPathAttrBin = parseInt("6",2);
var objFile = null;
FileSize = iFile.Size
//------------------ Initialisation variables globales ---------------
blnText = false;
blnBin = false;
strText = "";
strBin ="";
strFileName = strPath;
div.innerText = "";
//---------------------------------------------------------------------
strAttributesID = GetIdFileAttributes(iFile.Attributes);
tdFileName.innerHTML = strPath;
tdAttributes.innerHTML = "<STRONG>Attributs:</STRONG> (dec) " +
iFile.Attributes + " (hex) " + iFile.Attributes.toString(16) +
" (bin) [" + CnvIntToBin(iFile.Attributes) + "]<BR>";
var strConstAttribut ="<PRE>
Normal = 0 " + GetIdFileAttributes(iFile.Attributes,0) +
"Volume = 8 " + GetIdFileAttributes(iFile.Attributes,8) +
"Compressed = 2048 " + GetIdFileAttributes(iFile.Attributes,2048) + "<BR>" +
"ReadOnly = 1 " + GetIdFileAttributes(iFile.Attributes,1) +
"Directory = 16 " + GetIdFileAttributes(iFile.Attributes,16) + "<BR>" +
"Hidden = 2 " + GetIdFileAttributes(iFile.Attributes,2) +
"Archive = 32 " + GetIdFileAttributes(iFile.Attributes,32) + "<BR>" +
"System = 4 " + GetIdFileAttributes(iFile.Attributes,4) +
"Alias = 1024 " + GetIdFileAttributes(iFile.Attributes,1024) + "<BR></PRE>"
tdAttributes.innerHTML += strConstAttribut ;
tdType.innerHTML = "<STRONG>Type:</STRONG>" + iFile.Type + "<BR>" + "<B>" +
UTF(strPath) + "</B>";
tdVersion.innerHTML = "<STRONG>Version:</STRONG>" + strPathVersion;
tdSize.innerHTML = "<STRONG>Taille:</STRONG>" + FileSize + " " + Math.round(FileSize / 1024) + " Ko" +
" " + Math.round(FileSize / 1048576) + " Mo";
tdDateCreate1.innerHTML = "<STRONG>Date de création:</STRONG><BR>" + iFile.DateCreated ;
tdDateAcces1.innerHTML = "<STRONG>Date dernier accés :</STRONG><BR>" + iFile.DateLastAccessed;
tdDateModified1.innerHTML = "<STRONG>Date dernière modification :</STRONG><BR>" + iFile.DateLastModified ;
var DateCreated = new Date(iFile.DateCreated);
var DateLastAccessed = new Date(iFile.DateLastAccessed);
var DateLastModified = new Date(iFile.DateLastModified);
tdDateCreate2.innerHTML = "<BR>" + DateCreated.toLocaleString();
tdDateAcces2.innerHTML = "<BR>" + DateLastAccessed.toLocaleString();
tdDateModified2.innerHTML= "<BR>" + DateLastModified.toLocaleString();
try{
objFile = objFS.OpenTextFile(strPath,1,false);
strPathData = objFile.ReadAll();
div.innerText = strPathData ;
// Permutation texte / binaire:
// Si pas d'erreur de lecture alors sauvegarde
blnText = true;
strText = div.innerText;
if(div.innerText.length == 0)
div.innerText = strFileName;
}catch(e){
blnText = false;
div.innerText = strFileName;
}
divopen.scrollIntoView(false)
objFile = null;
}
// Prise en compte des caractères spéciaux dans le chemin
// Ex: c:\ par c:\\
function replaceChar(str,charAtSrc,strTgt)
{
var chars = "";
var strlen = parseInt(str.length);
for(var i=0;i < strlen ;i++)
{
if(str.charCodeAt(i) == parseInt(charAtSrc))
chars += strTgt;
else
chars += str.charAt(i);
}
return chars;
}
function GetInfo(path)
{
blnText = false;
blnBin = false;
strText = "";
strBin ="";
strFileName = path;
OpenPath(path,divopen);
}
//---------------[ ListHexData(strFileName,NBLIGNE,offset,octet,colonne) ] --------
// Description:
//
// Mise en forme des données binaires en colonnes Hexadecimales et Ascii
// OFFSET(hex) COLONNES HEXA COLONNES ASCII
// 00000001 00 41 42 00 .. .AB.
// Appel de fonction:
// Syntaxe : OpenFileBin(path,offset,octet,colonne)
// path : chemin absolu du fichier
// offset : Position du curseur dand le fichier
// [ de 0 à TailleFichier]
// octet : Nombre d'octet à lire à partir de l'offset
// [ de 0 à TailleFichier]
// colonne : définit le nombre de colonne pour l'affichage héxa
// Entree :
// strFileName --> Nom de fichier
// NBLIGNE --> Nombre de ligne selon la taille de fichier et le nombre de colonne
// offset --> Position du curseur dand le fichier
// octet --> Nombre d'octets à lire à partir de l'offset
// colonne --> Nombre de colonne
// Sortie :
// retourne le résultat sous forme de chaîne
// [ de 1 à 24] affichage par défaut 24 colonnes
//----------------------------------------------------------------------------------
function ListHexData(strFileName,NBLIGNE,offset,octet,colonne)
{
var AFT = new ActiveXObject("AuFilDuTemps.SystemFile");
for(var i=0;i<=NBLIGNE;i++)
{
if(i == NBLIGNE)
{
var LastOctet = FileSize % ((i * octet) + offset ) + 1
if( NBLIGNE == 0) LastOctet = FileSize;
if(LastOctet <= colonne)
var strHex0 = AFT.OpenFileBin(strFileName,(i * octet) + offset,LastOctet,colonne)
else
var strHex0 = AFT.OpenFileBin(strFileName,(i * octet) + offset,octet,colonne)
if(strHex0.length == 0) return ""
}
else
{
var strHex0 = AFT.OpenFileBin(strFileName,(i * octet) + offset,octet,colonne) ;
}
var strHex = strHex0.substring(2,strHex0.length );
var strAscii = "";
for(var j=0;j<strHex.length ;j+=3)
{
var nbDec = parseInt(strHex.substring(j,2 + j),16);
if(nbDec <= 32)
strAscii += "." ;
else
strAscii += String.fromCharCode(nbDec) ;
}
var Linehex = i * colonne + offset - 1 ;
Linehex = Fill0(Linehex.toString(16).toUpperCase());
if(i == NBLIGNE)
divopen.innerText += CRLF + Linehex + " " + strHex + FormatString(strHex,colonne * 3," ") + " " + strAscii + " ";
else
divopen.innerText += CRLF + Linehex + " " + strHex + " " + strAscii + " " ;
}
return strHex;
}
// hexa() cette Fonction est appelé aprés un timeout de 100 ms.
//
function hexa()
{
window.imgBin.click();
}
// Réduit d'une colonne l'affichage hexa
function Col0()
{
if(window.imgcol0.getAttribute("alt") == "" || txtcol.style.backgroundColor == "red" ) return;
colonne--;
octet--;
if(colonne < 1)
{
colonne = 1;
octet = 1;
}
else
{
blnBin = false;
strBin = "";
window.imgcol0.alt = colonne + "";
pstate.innerHTML = "En cours de traitement...";
tm = window.setTimeout("javascript:window.hexa();",100,"javascript");
}
txtcol.value = colonne;
}
// Augmente d'une colonne l'affichage hexa
function Col1()
{
if(window.imgcol0.getAttribute("alt") == "" || txtcol.style.backgroundColor == "red")
return;
colonne++;
octet++;
if(colonne > 24)
{
colonne = 24;
octet=24;
}
else
{
blnBin = false;
strBin ="";
window.imgcol1.alt = colonne + "";
pstate.innerHTML = "En cours de traitement...";
tm = window.setTimeout("javascript:window.hexa();",100,"javascript");
}
txtcol.value = colonne;
}
</SCRIPT>
---------------------------------------------------
Gestionnaire d'évènements
---------------------------------------------------
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript >
<!--
// -----------------------------------------------------------
// Sélection d'un répertoire
// -----------------------------------------------------------
function btnFolder_onclick() {
if(GetOS() == "XP")
{
alert("Non opérationnel sous XP");
return;
}
var oFolder = shell.BrowseForFolder(0, "Arborescence", 1,"c:\\");
if(oFolder == null) return;
var oFolderItem = oFolder.self
var chemin = replaceChar(oFolderItem.path ,92,"\\");
var folder = shell.NameSpace(chemin)
var elem
for(var i=0;i < folder.Items().Count;i++)
{
var elemItem = folder.Items().Item(i)
var titre = replaceChar(chemin ,32," ") + "\\" + replaceChar(elemItem.Name ,32," ");
divfile.innerHTML += "<DIV class=fichier style='CURSOR:hand'
onmouseover=this.className='onmouseoverWhite'
onmouseout=this.className='onmouseoutDarkkhari'
onclick='javascript:GetInfo(this.title);'" +
"title=" + titre + ">" + elemItem.Name + "</DIV>"
}
divfile.scrollIntoView(false);
}
// -----------------------------------------------------------
// Sélection d'un fichier
// Boîtes de dialogues sous XP - ProgId : "UserAccounts.commonDialog"
//------------------------------------------------------------
function btnFile_onclick() {
try{
var CommonDialog = null;
if(GetOS() == "XP")
CommonDialog = new ActiveXObject("UserAccounts.CommonDialog");
else
CommonDialog = Cdlg;
CommonDialog.Filter = "Tous les fichiers (*.*)|*.*|Flux RSS-XML (*.xml)|*.xml";
CommonDialog.FilterIndex = 1;
CommonDialog.ShowOpen();
strFileName = CommonDialog.FileName;
OpenPath(strFileName ,document.getElementById("divopen"));
}catch(e){};
pstate.innerHTML = "";
}
// Affichage hexadécimal limité à 8Ko
// 00 00 00 00 00 00 00 00 -| 4000 premiers octets
// 00 00 00 00 00 00 00 00 -|
// -----------------------
// -----------------------
// -----------------------
// -----------------------
// 00 00 00 00 00 00 00 00 -| 4000 derniers octets
// 00 00 00 00 00 00 00 00 -|
function imgBin_onclick()
{
if((divopen.innerText == "" )||( blnText == false )) return;
if(blnBin == false)
{
divopen.innerText ="";
divopen.innerText = CRLF + FormatString("",8 + 2 + colonne * 3 + 2 + colonne + 1,"-") + CRLF;
if(FileSize > 8000 )
{
NBLIGNE = parseInt((8000 / colonne) / 2);
var offset = 1
var strHex = ListHexData(strFileName,NBLIGNE ,offset,octet,colonne);
divopen.innerText += CRLF + FormatString("",8 + 2 + colonne * 3,".") + CRLF;
divopen.innerText += CRLF + FormatString("",8 + 2 + colonne * 3,".") + CRLF;
divopen.innerText += CRLF + FormatString("",8 + 2 + colonne * 3,".") + CRLF;
divopen.innerText += CRLF + FormatString("",8 + 2 + colonne * 3,".") + CRLF;
var offset = FileSize - 4000 + 1;
var strHex = ListHexData(strFileName,NBLIGNE ,offset,octet,colonne);
divopen.innerText += CRLF + FormatString("",8 + 2 + colonne * 3 + 2 + colonne + 1,"-") + CRLF;
}
else
{
NBLIGNE = parseInt(FileSize / colonne);
offset = 1;
var strHex = ListHexData(strFileName,NBLIGNE,offset,octet,colonne)
divopen.innerText += CRLF + FormatString("",8 + 2 + (colonne * 3) + 2 + colonne + 1,"-") + CRLF;
}
if(strHex != "")
{
blnBin = true;
strBin = divopen.innerText;
}
else
blnBin = false;
window.imgcol0.alt = "moins";
window.imgcol1.alt = "plus";
}
else
divopen.innerText = strBin;
window.scrollTo(1,500);
pstate.innerHTML = "";
window.clearInterval(tm);
}
function imgText_onclick() {
if(divopen.innerText == "" || blnBin == false)
return;
divopen.innerText = strText;
}
function image1_onclick() {
var objWSH = new ActiveXObject("WScript.Shell")
var ret = objWSH.Run("calc.exe")
objWSH = null;
}
//--------------------- [ GetDataHex ] -----------------------
// Description:
// - Lecture brut des octets. Pas de colonne d'offset et
// de colonne Ascii
//------------------------------------------------------------
function GetDataHex()
{ try{
divopen.innerText = "";
window.clearTimeout(tm);
var noffset = parseInt(txtoffset.value);
var nboctet = parseInt(txtoctet.value);
var NBLIGNE = parseInt((parseInt(txtoctet.value) / colonne));
var AFT = new ActiveXObject("AuFilDuTemps.SystemFile")
var stroffsetHex = AFT.OpenFileBin(strFileName,noffset,nboctet,colonne)
divopen.innerText += stroffsetHex;
pstate.innerHTML = "";
}catch(e){ pstate.innerHTML = e.description;}
}
function txtoffset_onkeypress() {
if(window.event.keyCode == 13 )
{
window.event.returnValue = false;
if(txtcol.style.backgroundColor == "white" && (strFileName.length > 0) && (txtoffset.value.length > 0) )
{
divopen.innerText = "";
pstate.innerHTML = "En Cours de traitement ...";
tm = window.setTimeout("javascript:GetDataHex();",100,"javascript");
}
}
}
function txtoffset_onkeyup() {
if(isNaN(txtoffset.value))
txtoffset.value = txtoffset.value.substring(0,txtoffset.value.length - 1)
}
function txtoctet_onkeypress() {
if(window.event.keyCode == 13 )
{
window.event.returnValue = false;
if(txtcol.style.backgroundColor == "white" && (strFileName.length > 0) && (txtoctet.value.length > 0))
{ divopen.innerText = "";
pstate.innerHTML = "En Cours de traitement ...";
tm = window.setTimeout("javascript:GetDataHex();",100,"javascript");
}
}
}
function txtcol_onkeyup() {
txtcol.style.backgroundColor = "white";
if(isNaN(txtcol.value))
{
txtcol.value = txtcol.value.substring(0,txtcol.value.length - 1)
}
else
if(txtcol.value <= 0 ||txtcol.value > 24)
txtcol.style.backgroundColor = "red"
else
colonne = octet = parseInt(txtcol.value);
}
function txtcol_onkeypress() {
if(window.event.keyCode == 13 && txtcol.value != "" && (strFileName.length > 0) && !(objFS.FolderExists(strFileName)))
{ window.event.returnValue = false;
blnBin = false;
strBin ="";
pstate.innerHTML = "En cours de traitement ...";
tm = window.setTimeout("javascript:window.hexa();",100,"javascript");
window.imgcol0.alt = "moins";
window.imgcol1.alt = "plus";
}
}
function txtoctet_onkeyup() {
if(isNaN(txtoctet.value))
txtoctet.value = txtoctet.value.substring(0,txtoctet.value.length - 1)
}
</SCRIPT>
</HEAD>
<BODY bgColor="darkgray" topmargin=0 vlink=white link=white>
<STYLE>
.onmouseoverWhite {background:white;}
.onmouseoutDarkkhaki {background:darkkhaki;}
</STYLE>
<H1 align=center><HR width="90%"><FONT color=#000>Fonctions Systèmes</FONT><HR width="90%">
<a href="http://www.aufildutemps.new.fr"><img alt=www.aufildutemps.new.fr
src="img/curdown.gif" border=5 hspace=0 align=middle vspace=0 height=94 width=105><br clear=left>
<font size=2>Au Fil Du Temps</font></a></H1>
<TABLE border=2 width="100%">
<TR><TD>
<div id=divfile style="OVERFLOW: scroll; HEIGHT: 191px; BACKGROUND-COLOR: gainsboro"></div>
</TD></TR>
</TABLE>
<TABLE cellSpacing=1 cellPadding=1 border=1 width="100%">
<TR>
<TD id=tdFileName bgColor=burlywood align=middle>Nom du Fichier</TD>
</TR>
<TR>
<TD id=tdAttributes bgColor=burlywood width="100%">Attributs</TD>
</TR>
</TABLE>
<TABLE id=TPATH cellSpacing=1 cellPadding=1 border=1 width="100%">
<TR>
<TD id=tdType width="30%" bgColor=burlywood>Type</TD>
<TD id=tdDateCreate1 width="35%" bgColor=burlywood>Date de création</TD>
<TD id=tdDateCreate2 width="35%" bgColor=burlywood>Date de création</TD></TR>
<TR>
<TD id=tdVersion width="30%" bgColor=burlywood>Version</TD>
<TD id=tdDateAcces1 width="35%" bgColor=burlywood>Date dernier accès</TD>
<TD id=tdDateAcces2 width="35%" bgColor=burlywood>Date dernier accès</TD></TR>
<TR>
<TD id=tdSize width="30%" bgColor=burlywood>Taille</TD>
<TD id=tdDateModified1 width="35%" bgColor=burlywood>Date dernière modification</TD>
<TD id=tdDateModified2 width="35%" bgColor=burlywood>Date dernière modification</TD></TR></TABLE>
<P align=center style="BACKGROUND-COLOR: white">
<input type=image src="img/icotexte.png" align=middle id=imgText name=imgText
LANGUAGE=javascript onclick="return imgText_onclick()" ></input>
<input type=image src="img/icobin.png" align=middle id=imgBin name=imgBin
LANGUAGE=javascript onclick="return imgBin_onclick()" > </input>
<INPUT language=javascript id=btnFolder onclick="return btnFolder_onclick()"
type=image src="img/icofolder.png" align=middle></INPUT>
<INPUT id=btnFile type=image src="img/icofile.png" size=32 value=Button
LANGUAGE=javascript onclick="return btnFile_onclick()" align=middle></INPUT>
</P>
<HR size=2>
<DIV align=center style="FONT-SIZE: x-small">
<SPAN style="LEFT: -34px; POSITION: relative; TOP: 10px" title=décimal>POSITION</SPAN>
<SPAN style="LEFT: -12px; POSITION: relative; TOP: 10px">OCTETS</SPAN>
<SPAN style="LEFT: 6px; POSITION: relative; TOP: 10px">COL</SPAN><BR>
<INPUT id=txtoffset style=" BORDER-TOP-WIDTH: 3px; BORDER-LEFT-WIDTH: 3px; BORDER-LEFT-COLOR: black;
BORDER-BOTTOM-WIDTH: 3px; BORDER-BOTTOM-COLOR: black; WIDTH: 91px;
BORDER-TOP-COLOR: black; HEIGHT: 22px; BORDER-RIGHT-WIDTH: 3px;
BORDER-RIGHT-COLOR: black" size=11 title="en décimal" LANGUAGE=javascript
onkeypress="return txtoffset_onkeypress()"
onkeyup="return txtoffset_onkeyup()" value=0>
<INPUT id=txtoctet align=center style="BORDER-TOP-WIDTH: 3px; BORDER-LEFT-WIDTH: 3px; BORDER-LEFT-COLOR: black;
BORDER-BOTTOM-WIDTH: 3px; BORDER-BOTTOM-COLOR: black; WIDTH: 63px; BORDER-TOP-COLOR: black; HEIGHT: 22px;
BORDER-RIGHT-WIDTH: 3px; BORDER-RIGHT-COLOR: black"
size=7 title="en décimal" LANGUAGE=javascript
onkeypress="return txtoctet_onkeypress()"
onkeyup="return txtoctet_onkeyup()" value=0>
<INPUT id=txtcol type=TEXTBOX style="BORDER-TOP-WIDTH: 3px; BORDER-LEFT-WIDTH: 3px; BORDER-LEFT-COLOR: black;
BORDER-BOTTOM-WIDTH: 3px; BORDER-BOTTOM-COLOR: black; WIDTH: 33px; BORDER-TOP-COLOR: black; HEIGHT: 22px;
BACKGROUND-COLOR: white; BORDER-RIGHT-WIDTH: 3px; BORDER-RIGHT-COLOR: black" size=1 value=24 maxLength=2
LANGUAGE=javascript
onkeyup ="return txtcol_onkeyup()" title="MAX 24"
onkeypress="return txtcol_onkeypress()"></INPUT>
<INPUT id=image1 style="POSITION: relative; TOP: 5px" type=image height=32
src="img/icocalcxp.png" value=Button name=image1 LANGUAGE=javascript onclick="return image1_onclick()">
</DIV>
<P align=center>
<IMG id=imgcol0 style="WIDTH: 24px; CURSOR: hand; HEIGHT: 24px"
onclick=javascript:Col0(); height=24 alt="" hspace=0 src="img/icol1.png" width=24
align=middle useMap="" border=2 >
<IMG id=imgcol1 style="WIDTH: 24px; CURSOR: hand; HEIGHT: 24px" onclick=javascript:Col1(); height=24
alt="" hspace=0 src="img/icor1.png" width=24 align=middle useMap="" border=2 >
</P>
<div></div><div align=center ><div align=center ><h1 id=pstate></h1></div></div>
<TABLE cellpadding=3 cellspacing=3 border=1 align=center>
<TR><TD id=tdhex>
<div id=divopen style="FONT-WEIGHT: normal; FONT-SIZE: smaller; TEXT-INDENT: 10px;
FONT-STYLE: normal; FONT-FAMILY: monospace; BACKGROUND-COLOR: gainsboro;
FONT-VARIANT: normal"></div></TD>
</TR>
</TABLE>
<div align=center ><hr size=2 color=black ><a href="http://www.aufildutemps.new.fr" ><STRONG><font
color=#000000>www.aufildutemps.new.fr</font></FONT></STRONG></a><br><font
size=1>Mise à jour le [ 12/09/2007 ]</font><br><img alt="" hspace=0
src="file:///C:\Inetpub\wwwroot\Aufildutemps\img\logo.png" vspace=0
border=0><br></div>
<br>
<object id=shell classid=clsid:13709620-C279-11CE-A49E-444553540000></object>
<object id=Cdlg style="LEFT: 0px; WIDTH: 1px; TOP: 0px"
classid=clsid:F9043C85-F6F2-101A-A3C9-08002B2F49FB name=Cdlg VIEWASTEXT>
<param NAME="_ExtentX" VALUE="847">
<param NAME="_ExtentY" VALUE="847">
<param NAME="_Version" VALUE="393216">
<param NAME="CancelError" VALUE="1">
<param NAME="Color" VALUE="0">
<param NAME="Copies" VALUE="1">
<param NAME="DefaultExt" VALUE="">
<param NAME="DialogTitle" VALUE="Ouverture fichier">
<param NAME="FileName" VALUE="">
<param NAME="Filter" VALUE="*.*">
<param NAME="FilterIndex" VALUE="0">
<param NAME="Flags" VALUE="0">
<param NAME="FontBold" VALUE="0">
<param NAME="FontItalic" VALUE="0">
<param NAME="FontName" VALUE="">
<param NAME="FontSize" VALUE="8">
<param NAME="FontStrikeThru" VALUE="0">
<param NAME="FontUnderLine" VALUE="0">
<param NAME="FromPage" VALUE="0">
<param NAME="HelpCommand" VALUE="0">
<param NAME="HelpContext" VALUE="0">
<param NAME="HelpFile" VALUE="">
<param NAME="HelpKey" VALUE="">
<param NAME="InitDir" VALUE="c:\\">
<param NAME="Max" VALUE="0">
<param NAME="Min" VALUE="0">
<param NAME="MaxFileSize" VALUE="260">
<param NAME="PrinterDefault" VALUE="1">
<param NAME="ToPage" VALUE="0">
<param NAME="Orientation" VALUE="1">
</object>
<object id=objFS classid=clsid:0D43FE01-F093-11CF-8940-00A0C9054228 VIEWASTEXT></object>
<p></p>
</BODY>
</HTML>
// Télécharger shell.zip
// 1. décompresser le contenu dans un même répertoire
// 2. Pour l'inscription de la DLL
// 2.1 En ligne de commande tapez la commande suivante
// regsvr32 AuFilDuTemps.dll
// 3. Copie du fichier VB6FR.DLL dans le répertoire système de Windows (system32)
// 4. Ouvrir shell.html avec Internet Explorer
