Своё расширение файла для проги.

  • Автор темы BStudio
  • Дата начала

Красивые обои ?

  • Да, очень

    Голосов: 0 0.0%
  • Нормалёк

    Голосов: 0 0.0%
  • Фиговые

    Голосов: 0 0.0%

  • Всего проголосовало
    0
Статус
Закрыто для дальнейших ответов.
B

BStudio

Гость
#1
:: Язык: Visual Basic
:: Программирую на: Microsoft Visual Studio 2008 Professional 2010 Ultimate Rus


У меня есть прога.. нужно чтобы с её помощью (в TextBox) выводилось содержимое файлов с расширением *.qnt (т.е. когда юзер будет указывать Открыть с помощью.. - этой проги :D )...
Ассоциацию файла с программой как сделать я уже нашёл..

<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Кому нужно, посмотрите...</div></div><div class="sp-body"><div class="sp-content">
Код:
'Ассоциация файлов с программой
Public Sub Associate(ByVal sType As String, ByVal sKey As String, ByVal sDescr As String, _
ByVal iIcon As Integer, ByVal sPrompt As String)

Call RegSetValue(HKEY_CLASSES_ROOT, sKey, vbNullString, sDescr)
If Len(sPrompt) Then Call RegSetValue(HKEY_CLASSES_ROOT, sKey & "\shell\open\command", vbNullString, sPrompt & " %1";)
Call RegSetValue(HKEY_CLASSES_ROOT, sKey & "\DefaultIcon", vbNullString, App.Path & "\" & LCase(App.EXEName) & ".exe," & CStr(iIcon))
Call RegSetValue(HKEY_CLASSES_ROOT, sType, vbNullString, sKey)
End Sub

Public Function DeAssociate(sType As String) As String
;DeAssociate = RegGetValue(HKEY_CLASSES_ROOT, sType, vbNullString)

Call RegDelKey(HKEY_CLASSES_ROOT, DeAssociate & "\shell\open\command";)
Call RegDelKey(HKEY_CLASSES_ROOT, DeAssociate & "\shell\open";)
Call RegDelKey(HKEY_CLASSES_ROOT, DeAssociate & "\shell";)
Call RegDelKey(HKEY_CLASSES_ROOT, DeAssociate)
Call RegDelKey(HKEY_CLASSES_ROOT, sType)
End Function

Public Function IsAssociate(sType As String, sKey As String) As Boolean
IsAssociate = (RegGetValue(HKEY_CLASSES_ROOT, sType, "";) = sKey)
End Function


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

' Проверка ассоциированности
mnuAssociate.Checked = IsAssociate(".shw", "HWStSkin";)

' Отключение ассоциации
Call DeAssociate(".shw";)

' Associate
Call Associate(".shw", "HWStSkin", "Файл скина для программы HomeWork Statist", 1, App.Path & "\" & LCase(App.EXEName) & ".exe";)
А вот как сделать чтоб этот файл корректно открывался в ней..
(я так понимаю, что когда файл открывается, программе передаются какие-то аргументы :) )

Помогите мне, кто-нибудь.. :)


В подарочек красивая wscr- и fscr- обоинка ^_^

Добавлено: :rolleyes:
 

Вложения

T

Tanya

Гость
#2
В свойствах проекта ставим
Application type: Windows Service
Startup object : Sub Main

Пусть на форме Form1 единственный элемент RichTextBox1
Первый (и единственный) параметр командной строки - имя файла для открытия


Код:
	Sub Main(ByVal cmdArgs() As String)
If (cmdArgs.Length > 0) Then
MsgBox(cmdArgs(0))
Dim f As New Form1

f.RichTextBox1.LoadFile(cmdArgs(0), RichTextBoxStreamType.PlainText)

f.ShowDialog()

End If
End Sub
Ну, как-то так
 
B

BStudio

Гость
#3
Спасибо вам большое, всё работает !

;) :) :)
 
Статус
Закрыто для дальнейших ответов.