Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как на определ-ый тип фаила вызвать соотв. прог Добавлено: 17.01.03 15:27  

Автор вопроса:  Evard

Как програмно можно(или с использованием API) указать OS на определ-ый тип фаила вызывать соответствующую програму с параметрами

Заранее благодарю

Эдвард

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 msv



Вопросов: 34
Ответов: 312
 Web-сайт: msvprogs.narod.ru
 Профиль | | #1
Добавлено: 17.01.03 15:35
Private Declare Function RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, phkResult As Long, lpdwDisposition As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Boolean
End Type

Const HKEY_CLASSES_ROOT = &H80000000
Const REG_SZ = 1
Const KEY_ALL_ACCESS = &H3F

Public Sub AsProgram(FileType As String)
Dim retval As Long
Dim Result As Long
Dim SA As SECURITY_ATTRIBUTES
Dim sPath As String

retval = RegCreateKeyEx(HKEY_CLASSES_ROOT, App.Title, 0, vbNullString, 0, KEY_ALL_ACCESS, SA, Result, &H1)
RegSetValueEx Result, "", 0, REG_SZ, ByVal App.Title, Len(App.Title)


retval = RegCreateKeyEx(HKEY_CLASSES_ROOT, FileType, 0, vbNullString, 0, KEY_ALL_ACCESS, SA, Result, &H1)
RegSetValueEx Result, "", 0, REG_SZ, ByVal App.Title, Len(App.Title)

If Right(App.Path, 1) = "\" Then
sPath = App.Path & App.EXEName & ".exe %1"
Else
sPath = App.Path & "\" & App.EXEName & ".exe %1"
End If

retval = RegCreateKeyEx(HKEY_CLASSES_ROOT, App.Title & "\shell\open\command", 0, vbNullString, 0, KEY_ALL_ACCESS, SA, Result, &H1)
RegSetValueEx Result, "", 0, REG_SZ, ByVal sPath, Len(sPath)

End Sub

 

Использование: 

AsProgram ".doc"

Ответить

Номер ответа: 2
Автор ответа:
 CaS



ICQ: 165551179 

Вопросов: 10
Ответов: 124
 Web-сайт: www22.brinkster.com/casperz
 Профиль | | #2
Добавлено: 21.01.03 13:08

Я точно не помню, но, по-моему, так:

x=shell("start document.doc")

Ответить

Номер ответа: 3
Автор ответа:
 boevik



Хранитель чата

ICQ: 137392264 

Вопросов: 8
Ответов: 557
 Web-сайт: www.hypertech.ru
 Профиль | | #3
Добавлено: 21.01.03 15:15
Используй ShellExecute

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам