bonjour,
j'aimerais savoir si c'est possible de simuler un double click sur un fichier à partir d'une page web, c'est à dire avoir un bouton, on click dessus, le fichier s'ouvre comme si on avait double clické dessus avec une souris.
merci
bonjour,
j'aimerais savoir si c'est possible de simuler un double click sur un fichier à partir d'une page web, c'est à dire avoir un bouton, on click dessus, le fichier s'ouvre comme si on avait double clické dessus avec une souris.
merci
il me semble qu'en mettant un lien sur ton bouton avec un seul clic, le fichier va s'ouvrir
je parle du code qu'il faut mettre derrière le bouton..
si je comprends bien ton problème, tu as un fichier représenté soit par une image ou un lien avec un bouton à côté et en cliquant sur le bouton une seule fois tu veux ouvrir le fichier correspondant ? si c'est cela pas besoin de bouton tu mets le lien sur l'image ou le lien encore mieux et le problème est résolé. un bouton sert à soumettre un formulaire c'est à dire à transmettre des données à une page de traitement de formulaire mais je comprends peuit être mal ta demande ou ton besoin
non c pas ça je ré explique
j'ai fichier toto.txt sur mon disque dur C:\toto.txt
je veux un bouton (ou un lien) sur ma page web "ouvrir toto"
quand je clique dessus, toto se lance à coté, dans un notepad, comme si j'avais doublé cliqué dessus en allant sur C:\toto.txt
j'espère que j'ai été assez clair comme ça.
merci.
oui c'est clair mais cela ne change en rien ma réponse précédente, il te suffit dans ta page web de faire un lien sur ce fichier du style
pas besoin de bouton et cela fonctionne de la même manière pour tous les types de fichiers et ceci n'est psa de l'asp mais de l'html pur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <a href="monfichier.txt" target="_blank">mon fichier</a>
autre chose, est ce pour une utilisation perso sur ton poste ou ta page sera t elle diffusée en intranet ou sur le web ? petit détail qui a de l'importance, ton txt sur ton C sera innaccessible pour les visiteurs si la page est sur un serveur web, il te faut copier ce fichier sur le serveur web pour le rendre accessible et encore qu'il soit dans un répertoire en lecture pour les visiteurs
merci, mais il ne lance pas le fichier dans notepad avec cette syntaxe.
j'ai fini par trouver une routine en vbscript
que j'appelle pour ouvrir le fichier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Sub Run(ByVal sFile) Dim shell Set shell = CreateObject("WScript.Shell") shell.Run Chr(34) & sFile & Chr(34), 1, false Set shell = Nothing End Sub
Merci encore.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Run "C:\toto.txt"
Si ça t'intéresse j'ai trouvé cette fonction que j'ai adapté à mettre dans ton bouton et associé à une listbox...
Si tu préfère ça...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 Dim iStream As System.IO.Stream ' Buffer to read 10K bytes in chunk: Dim buffer(10000) As Byte ' Length of the file: Dim length As Integer ' Total bytes to read: Dim dataToRead As Long ' Identify the file to download including its path. Dim filepath As String = GetRacine() & Me.lst_Files.SelectedValue ' Identify the file name. Dim filename As String = System.IO.Path.GetFileName(Me.lst_Files.SelectedItem.Text) Try ' Open the file. iStream = New System.IO.FileStream(filepath, System.IO.FileMode.Open, _ IO.FileAccess.Read, IO.FileShare.Read) ' Total bytes to read: dataToRead = iStream.Length Response.ContentType = "application/octet-stream" 'On change le nom pour qu'il reconnaisse son extension Response.AddHeader("Content-Disposition", "attachment; filename=" & filename) ' Read the bytes. While dataToRead > 0 ' Verify that the client is connected. If Response.IsClientConnected Then ' Read the data in buffer length = iStream.Read(buffer, 0, 10000) ' Write the data to the current output stream. Response.OutputStream.Write(buffer, 0, length) ' Flush the data to the HTML output. Response.Flush() ReDim buffer(10000) ' Clear the buffer dataToRead = dataToRead - length Else 'prevent infinite loop if user disconnects dataToRead = -1 End If End While Catch ex As Exception ' Trap the error, if any. Response.Write("Error : " & ex.Message) Finally If IsNothing(iStream) = False Then ' Close the file. iStream.Close() End If End Try End If
J'ai posté ma réponse malgré que t'en ai trouvé une autre car je crois que le Shell s'exécute côté client et non côté serveur...
Donc si ton fichier "toto.txt" se trouve sur ton serveur et qu'un client essai d'y accéder, il n'y arrivera pas.
Je ne suis pas sûr de moi mais fait des tests quand même...
Ma fonction permet d'ouvrir une page de téléchargement commune avec le choix d'ouvrir le fichier...
Bonne journée!!
Merci Kalion, la fonction du shell arrange très bien mon cas.
Mais, je garde ta fonction sous la main, au cas ou je déporte ce que j'ai sur un serveur.
Bon début de semaine.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager