Voici un bout de code utilisé pour associer un type de fichier à une
application.
Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey =
oRegKey.CreateSubKey(".shl")
oRegKey.SetValue("", ".shl")
oRegKey.Close()
oRegKey = Registry.ClassesRoot
Dim oRegKeyOpenCommand As RegistryKey
oRegKeyOpenCommand = oRegKey.CreateSubKey(".shl\shell\open\command")
oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & " %1")
oRegKeyOpenCommand.Close()
oRegKey.Close()
Et voici le bout de code utilisé pour récupérer le fichier double cliqué
dans l'explorateur (en très résumé).
Dim param As String = Microsoft.VisualBasic.Command()
Dim tmp As String() = param.Split("\")
fileName = tmp(tmp.Length - 1)
Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double
cliquant dessus, le nom de fichier récupéré dans param est un nom en 8.3.
Avez-vous une idée sur la manière de récupérer le nom long du fichier ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Huet
De mémoire, il me semble que si tu met à la place du %1 un %L, ça te mettra le nom complet.
NB : il n'y aurait pas un truc tout fait pour associer une extension à une applicatoin, en .Net ?????
Olivier Huet
"J. Smith" wrote in message news:41978e13$0$6205$
Voici un bout de code utilisé pour associer un type de fichier à une application.
Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey > oRegKey.CreateSubKey(".shl") oRegKey.SetValue("", ".shl") oRegKey.Close()
oRegKey = Registry.ClassesRoot
Dim oRegKeyOpenCommand As RegistryKey oRegKeyOpenCommand = oRegKey.CreateSubKey(".shlshellopencommand") oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & " %1") oRegKeyOpenCommand.Close()
oRegKey.Close()
Et voici le bout de code utilisé pour récupérer le fichier double cliqué dans l'explorateur (en très résumé).
Dim param As String = Microsoft.VisualBasic.Command() Dim tmp As String() = param.Split("") fileName = tmp(tmp.Length - 1)
Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double cliquant dessus, le nom de fichier récupéré dans param est un nom en 8.3. Avez-vous une idée sur la manière de récupérer le nom long du fichier ?
Merci
De mémoire, il me semble que si tu met à la place du %1 un %L, ça te mettra
le nom complet.
NB : il n'y aurait pas un truc tout fait pour associer une extension à une
applicatoin, en .Net ?????
Olivier Huet
"J. Smith" <test@test.com> wrote in message
news:41978e13$0$6205$626a14ce@news.free.fr...
Voici un bout de code utilisé pour associer un type de fichier à une
application.
Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey > oRegKey.CreateSubKey(".shl")
oRegKey.SetValue("", ".shl")
oRegKey.Close()
oRegKey = Registry.ClassesRoot
Dim oRegKeyOpenCommand As RegistryKey
oRegKeyOpenCommand = oRegKey.CreateSubKey(".shlshellopencommand")
oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & " %1")
oRegKeyOpenCommand.Close()
oRegKey.Close()
Et voici le bout de code utilisé pour récupérer le fichier double cliqué
dans l'explorateur (en très résumé).
Dim param As String = Microsoft.VisualBasic.Command()
Dim tmp As String() = param.Split("")
fileName = tmp(tmp.Length - 1)
Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double
cliquant dessus, le nom de fichier récupéré dans param est un nom en 8.3.
Avez-vous une idée sur la manière de récupérer le nom long du fichier ?
De mémoire, il me semble que si tu met à la place du %1 un %L, ça te mettra le nom complet.
NB : il n'y aurait pas un truc tout fait pour associer une extension à une applicatoin, en .Net ?????
Olivier Huet
"J. Smith" wrote in message news:41978e13$0$6205$
Voici un bout de code utilisé pour associer un type de fichier à une application.
Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey > oRegKey.CreateSubKey(".shl") oRegKey.SetValue("", ".shl") oRegKey.Close()
oRegKey = Registry.ClassesRoot
Dim oRegKeyOpenCommand As RegistryKey oRegKeyOpenCommand = oRegKey.CreateSubKey(".shlshellopencommand") oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & " %1") oRegKeyOpenCommand.Close()
oRegKey.Close()
Et voici le bout de code utilisé pour récupérer le fichier double cliqué dans l'explorateur (en très résumé).
Dim param As String = Microsoft.VisualBasic.Command() Dim tmp As String() = param.Split("") fileName = tmp(tmp.Length - 1)
Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double cliquant dessus, le nom de fichier récupéré dans param est un nom en 8.3. Avez-vous une idée sur la manière de récupérer le nom long du fichier ?
Merci
J. Smith
Merci. Cela fonctionne.
Que veux-tu dire par "un truc tout fait" ?
"Olivier Huet" a écrit dans le message de news:%23d6n5$
De mémoire, il me semble que si tu met à la place du %1 un %L, ça te
mettra
le nom complet.
NB : il n'y aurait pas un truc tout fait pour associer une extension à une applicatoin, en .Net ?????
Olivier Huet
"J. Smith" wrote in message news:41978e13$0$6205$ > Voici un bout de code utilisé pour associer un type de fichier à une > application. > > Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey > > oRegKey.CreateSubKey(".shl") > oRegKey.SetValue("", ".shl") > oRegKey.Close() > > oRegKey = Registry.ClassesRoot > > Dim oRegKeyOpenCommand As RegistryKey > oRegKeyOpenCommand = oRegKey.CreateSubKey(".shlshellopencommand") > oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & "
%1")
> oRegKeyOpenCommand.Close() > > oRegKey.Close() > > > Et voici le bout de code utilisé pour récupérer le fichier double cliqué > dans l'explorateur (en très résumé). > > Dim param As String = Microsoft.VisualBasic.Command() > Dim tmp As String() = param.Split("") > fileName = tmp(tmp.Length - 1) > > > Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double > cliquant dessus, le nom de fichier récupéré dans param est un nom en
8.3.
> Avez-vous une idée sur la manière de récupérer le nom long du fichier ? > > Merci > >
Merci.
Cela fonctionne.
Que veux-tu dire par "un truc tout fait" ?
"Olivier Huet" <huet-pasdespamsvp-.o@caramail.com> a écrit dans le message
de news:%23d6n5$pyEHA.2876@TK2MSFTNGP12.phx.gbl...
De mémoire, il me semble que si tu met à la place du %1 un %L, ça te
mettra
le nom complet.
NB : il n'y aurait pas un truc tout fait pour associer une extension à une
applicatoin, en .Net ?????
Olivier Huet
"J. Smith" <test@test.com> wrote in message
news:41978e13$0$6205$626a14ce@news.free.fr...
> Voici un bout de code utilisé pour associer un type de fichier à une
> application.
>
> Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey > > oRegKey.CreateSubKey(".shl")
> oRegKey.SetValue("", ".shl")
> oRegKey.Close()
>
> oRegKey = Registry.ClassesRoot
>
> Dim oRegKeyOpenCommand As RegistryKey
> oRegKeyOpenCommand = oRegKey.CreateSubKey(".shlshellopencommand")
> oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & "
%1")
> oRegKeyOpenCommand.Close()
>
> oRegKey.Close()
>
>
> Et voici le bout de code utilisé pour récupérer le fichier double cliqué
> dans l'explorateur (en très résumé).
>
> Dim param As String = Microsoft.VisualBasic.Command()
> Dim tmp As String() = param.Split("")
> fileName = tmp(tmp.Length - 1)
>
>
> Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double
> cliquant dessus, le nom de fichier récupéré dans param est un nom en
8.3.
> Avez-vous une idée sur la manière de récupérer le nom long du fichier ?
>
> Merci
>
>
"Olivier Huet" a écrit dans le message de news:%23d6n5$
De mémoire, il me semble que si tu met à la place du %1 un %L, ça te
mettra
le nom complet.
NB : il n'y aurait pas un truc tout fait pour associer une extension à une applicatoin, en .Net ?????
Olivier Huet
"J. Smith" wrote in message news:41978e13$0$6205$ > Voici un bout de code utilisé pour associer un type de fichier à une > application. > > Dim oRegKey As RegistryKey = Registry.ClassesRoot oRegKey > > oRegKey.CreateSubKey(".shl") > oRegKey.SetValue("", ".shl") > oRegKey.Close() > > oRegKey = Registry.ClassesRoot > > Dim oRegKeyOpenCommand As RegistryKey > oRegKeyOpenCommand = oRegKey.CreateSubKey(".shlshellopencommand") > oRegKeyOpenCommand.SetValue("", theApp.GetType.Assembly.Location & "
%1")
> oRegKeyOpenCommand.Close() > > oRegKey.Close() > > > Et voici le bout de code utilisé pour récupérer le fichier double cliqué > dans l'explorateur (en très résumé). > > Dim param As String = Microsoft.VisualBasic.Command() > Dim tmp As String() = param.Split("") > fileName = tmp(tmp.Length - 1) > > > Tout cela fonctionne bien, mais lorsque l'on ouvre un fichier en double > cliquant dessus, le nom de fichier récupéré dans param est un nom en
8.3.
> Avez-vous une idée sur la manière de récupérer le nom long du fichier ? > > Merci > >