Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: Ассоциация программы с файлом! Добавлено: 26.02.08 15:11  

Автор вопроса:  Игорь | ICQ: 457394129 
Люди подскажите как можно ассоцеировать файл с программой? Но так, чтобы программа не просто запускалась, но и открывала в себе открываемый файл?

Ответить

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

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



ICQ: 148640473 

Вопросов: 135
Ответов: 270
 Профиль | | #1 Добавлено: 26.02.08 15:15
ассоциировать файл:
http://vbnet.ru/faq/showtopic.asp?id=188
а открывать, обрабатывай параметры коммандной строки( функция command), при запуске документа туда будт сброшен полный путь до документа который открывается. вот и всё.
ЗЫ. эта тема обсуждалась и не раз, так что поиск тебе в руки.

Ответить

Номер ответа: 2
Автор ответа:
 Игорь



ICQ: 457394129 

Вопросов: 52
Ответов: 133
 Профиль | | #2 Добавлено: 26.02.08 17:50
Спасибо зуммер за помощь-файл я смог открыть. Но теперь столкнулся с такой проблемой-когда я открываю файл-запускается прога и он открывается, а когда открываю другой файл-он открывается уже в другой копии программы. Как сделать чтобы все файлы открывались в одной проге, потомучто если поставить ограничение количества запущенных копий, то просто файлы не открываются!

Ответить

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



ICQ: 148640473 

Вопросов: 135
Ответов: 270
 Профиль | | #3 Добавлено: 26.02.08 19:16
с этим уже сложнее... можно попробовать использовать DDE (http://vbnet.ru/faq/showtopic.asp?id=415)
Правда честноговоря у меня сомнения что удастся реализоавть обе части в одном проекте.
Можно в качестве изврашения попытатся послыать уже запущенному окну клавиши.

Ответить

Номер ответа: 4
Автор ответа:
 Игорь



ICQ: 457394129 

Вопросов: 52
Ответов: 133
 Профиль | | #4 Добавлено: 26.02.08 20:06
Можно про всё по подробнее )

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 26.02.08 20:25
Ассоциировать файл не на основную программу, а на вспомогательную, которая будет заниматься разруливанием ситуаций когда основная программа уже открыта, и надо открыть файл не в копии программы, а в той что уже открыта.

Про механизмы взаимодействия программ - отдельная тема. Можно и с помощью DDE, как советовал ZoomerSD, но я бы советовал использовать более классические способы взаимодействия, такие как мютексы, симафоры, шаредмэмори...

Ответить

Номер ответа: 6
Автор ответа:
 Игорь



ICQ: 457394129 

Вопросов: 52
Ответов: 133
 Профиль | | #6 Добавлено: 26.02.08 20:31
"Ассоциировать файл не на основную программу, а на вспомогательную, которая будет заниматься разруливанием ситуаций когда основная программа уже открыта, и надо открыть файл не в копии программы, а в той что уже открыта."

Ну дело то в том, что я хочу запускать все файлы в одной программе, а получается так, что при открывании каждого нового файла-открывается новая копия!

Ответить

Номер ответа: 7
Автор ответа:
 ZoomerSD



ICQ: 148640473 

Вопросов: 135
Ответов: 270
 Профиль | | #7 Добавлено: 26.02.08 20:31
такие как мютексы, симафоры, шаредмэмори
Описание в студию, мне из этих трёх лиш одно слово, sharedmemory знакомо.

Ответить

Номер ответа: 8
Автор ответа:
 ZoomerSD



ICQ: 148640473 

Вопросов: 135
Ответов: 270
 Профиль | | #8 Добавлено: 26.02.08 20:34
Ну дело то в том, что я хочу запускать все файлы в одной программе, а получается так, что при открывании каждого нового файла-открывается новая копия!

 он это и имел в виду. напиши вспомогательную программу, с которой ассоциируеш расширение, пускай она проверяет, запущено ли уже главное приложение, если нет то запускает его с файлом в качестве параметра, если запущено то одним из способов передаёт ему путь до файла, который надо открыть.

Ответить

Номер ответа: 9
Автор ответа:
 Игорь



ICQ: 457394129 

Вопросов: 52
Ответов: 133
 Профиль | | #9 Добавлено: 26.02.08 20:56
Тут опять несостыковочка выходит: толку мне от вспомогательной проги, если при каждом новом открытом файле она тоже буден запускаться ещё раз?

Ответить

Номер ответа: 10
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #10
Добавлено: 26.02.08 20:59
Стукни мне в асю, я недавно для Rascal'а писал модуль подобный.

Ответить

Номер ответа: 11
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #11 Добавлено: 26.02.08 21:08
Описание в студию, мне из этих трёх лиш одно слово, sharedmemory знакомо.
Ну шутиш? :) Описание благополучно в википедии найдешь :) А если к вопросу подключить гугля - то и исходники, примеры...

Ответить

Номер ответа: 12
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #12 Добавлено: 26.02.08 21:10
Тут опять несостыковочка выходит: толку мне от вспомогательной проги, если при каждом новом открытом файле она тоже буден запускаться ещё раз?
Она будет запускаться, разруливать открытие файла.. т.е. если основная програ открыта - будет ей посылать команду на открытие заданного файла, а не запускать новую копию основной программы. Затем вспомогательная програ будет выключаться.

Ответить

Страница: 1 |

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



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