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

Тема в разделе "Visual Basic", создана пользователем BStudio, 20 июн 2010.

?

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

  1. Да, очень

    0 голосов
    0,0%
  2. Нормалёк

    0 голосов
    0,0%
  3. Фиговые

    0 голосов
    0,0%
Статус темы:
Закрыта.
  1. BStudio

    BStudio Гость

    :: Язык: 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">
    Код (LotusScript):
    'Ассоциация файлов с программой
    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:
     

    Вложения:

  2. Tanya

    Tanya Гость

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

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


    Код (Text):
        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
    Ну, как-то так
     
  3. BStudio

    BStudio Гость

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

    ;) :) :)
     
  4. BStudio

    BStudio Гость

    Тему можно закрыть.

    ;)
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей