Открытие файла своим приложением - Visual Basic .NET
Формулировка задачи:
Добрый день!
создал текстовый файл со своим расширением
хочу открыть его по Enter в своем приложении, но не получается
хотя через командную строку все открывается
подскажите что делать
не помогает
что я делаю не так?
может проблема в компе?
windows7, 64-bit
прописал
Листинг программы
- Imports System.Reflection
- Imports Microsoft.Win32
- Public Class MainForm
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- Dim dir = Registry.ClassesRoot.CreateSubKey(".ab\shell\open\command")
- Dim value = """" & Assembly.GetExecutingAssembly().Location & """ ""%1"""
- dir.SetValue(Nothing, value)
- End Sub
- End Class
сделал ярлык с параметрами
объект: путь до приложения пробел путь до файла (C:\VSP\SendMailAll\SendMail.exe D:\proba.smb)
рабочая папка: путь до приложения (C:\VSP\SendMailAll)
тоже все запускается
Решение задачи: «Открытие файла своим приложением»
textual
Листинг программы
- Imports System.Runtime.InteropServices
- Public Class frm_SenderMail
- Const SHCNE_ASSOCCHANGED As Long = &H8000000L
- Const SHCNF_IDLIST As UInteger = &H0UI
- <DllImport("shell32.dll", CharSet:=CharSet.Auto, SetLastError:=True)> Public Shared Sub SHChangeNotify(ByVal wEventId As UInt32, ByVal uFlags As UInt32, ByVal dwItem1 As IntPtr, ByVal dwItem2 As IntPtr)
- End Sub
- Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
- My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\.smb", "", "smbfile")
- My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\pckfile\shell\open\command", "", """" & Application.ExecutablePath & """ %1")
- My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.smb", "Application", Application.ExecutablePath)
- My.Computer.Registry.SetValue("HKEY_CLASSES_ROOT\smbfile\DefaultIcon", "", Application.ExecutablePath & ",0")
- SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, IntPtr.Zero, IntPtr.Zero)
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д