Автор Тема: Вызов explorera из автономной флеш-заставки  (Прочитано 6484 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Lu

  • Гость
Есть проблема
Разобралась бы сама, но дело горит, и сделать все надо срочно
крайний срок - вторник.
The roof is on fire%(

Помогите, люди!
Есть заставка на флеше, есть asp - файл.
Заставка автономная, которая .exe

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

Lu

  • Гость
Задача упрощается... и конкретизируется
пишу батник, запускающий последовательно плейер и другой экзешник (написанный на Делфях)
НО
одна есть проблема
в коде второго экзешника использую ShellExecute:

ShellExecute(0,nil,'http://bla-bla-bla/index.asp', nil,nil,SW_SHOW);

все отично компилируется, но почему-то результат нулевой...

кто знает, в чем тут может быть трабл?

Оффлайн Calve

  • Действительный статский советник
  • *****
  • Сообщений: 1154
  • Репутация: 4
  • Пол: Мужской
Re: Вызов explorera из автономной флеш-заставки
« Ответ #2 : ёоЭм 20, 2005, 08:49:11 am »
Попробуй так:
ShellExecute(0, 'open', 'http://bla-bla-bla/index.asp', nil, nil, SW_SHOW);

Если пишешь на паскале, то нужно еще преобразовать строки:
ShellExecute(0, PChar('open'), PChar('http://bla-bla-bla/index.asp'), nil, nil, SW_SHOW);

Оффлайн Greblin

  • Коллежский секретарь
  • ***
  • Сообщений: 52
  • Репутация: 4
  • Пол: Мужской
Re: Вызов explorera из автономной флеш-заставки
« Ответ #3 : ёоЭм 20, 2005, 05:53:51 pm »
Можно ещё
ShellExecute(0, 'explore', 'http://bla-bla-bla/index.asp' nil, nil, SW_SHOW)
Росли вроде умными, выросли дурнями... (c)А.Васильев

batmax

  • Гость
Re: Вызов explorera из автономной флеш-заставки
« Ответ #4 : ёоЭм 20, 2005, 06:58:37 pm »
to All:
Извините, что не по существу, но ведь asp-файл должен быть обработан на сервере, а клиенту-то поступает результат в хтмл-е. Или же задача в том, чтобы вызвать с сервера (будучи в онлайне) не тот файл, что зашит в заставке, а какой-то другой ? Поясните, пожалуйста, этот момент.

Lu

  • Гость
Re: Вызов explorera из автономной флеш-заставки
« Ответ #5 : ёоЭм 20, 2005, 09:33:06 pm »
Ни один из предложенных вариантов не проходит...  :?
я уже по всякому мудрила с параметрами ShellExecuta
просто ума не приложу, в чем проблема?!!

сейчас как альтернативу пользую winexec - вызываю в нем эксплорер, в качестве дефолтной страницы прописываю свой index.asp... вариант, конечно, не лучший...

Цитировать
Извините, что не по существу, но ведь asp-файл должен быть обработан на сервере, а клиенту-то поступает результат в хтмл-е. Или же задача в том, чтобы вызвать с сервера (будучи в онлайне) не тот файл, что зашит в заставке, а какой-то другой ? Поясните, пожалуйста, этот момент.

Точки над Ё )): Я защищаю свой диплом на днях... диплом = asp приложение
мне надо любыми способами продемонстрировать его работу ГАК
перед дипломом обязательна заставка (я ее сделала во флеше,в формате автономного плейера)
из заставки вызывается прога
есть, конечно, вариант флеш загнать в html (возможно, я так и сделаю, если время останется), но очень хочется домучать до победного первоначальную идею. должна же эта проблема как-то решаться  8)

batmax

  • Гость
Re: Вызов explorera из автономной флеш-заставки
« Ответ #6 : ёоЭм 21, 2005, 12:23:52 pm »
to Lu:
Так если вы располагаете исходниками флешки, то нет ничего проще - используйте В ЗАСТАВКЕ ф-ию FSCommand языка ActionScript, в флешевском хелпе про неё очень подробно написано. Там приводится много вариантов её использования. Я-то думал, у вас заставка только в виде swf-файла, чужая, без исходников. Только имейте в виду, если вызывать через эту ф-ию внешнюю .exe или там .bat программу, то параметры в ком.строке ей передать низя, так уж они её сделали неумно.

Lu

  • Гость
Re: Вызов explorera из автономной флеш-заставки
« Ответ #7 : ёоЭм 21, 2005, 01:03:49 pm »
to Lu:
Так если вы располагаете исходниками флешки, то нет ничего проще - используйте В ЗАСТАВКЕ ф-ию FSCommand языка ActionScript, в флешевском хелпе про неё очень подробно написано. Там приводится много вариантов её использования. Я-то думал, у вас заставка только в виде swf-файла, чужая, без исходников. Только имейте в виду, если вызывать через эту ф-ию внешнюю .exe или там .bat программу, то параметры в ком.строке ей передать низя, так уж они её сделали неумно.
fscommand пробовала первым делом
в том-то и загвоздка, что мне парметры передать нужно

batmax

  • Гость
Re: Вызов explorera из автономной флеш-заставки
« Ответ #8 : ёоЭм 21, 2005, 06:00:16 pm »
to Lu:
Значит, вы невнимательно читали хелп. Там написано:
Usage 4: In Visual Basic, Visual C++, and other programs that can host ActiveX controls, fscommand sends a VB event with two strings that can be handled in the environment's programming language. For more information, use the keywords Flash method to search the Flash Support Center at www.macromedia.com/support/flash.
То есть надо написать простенькую прогу на вижл бейсике, которая будет запускать флеш-проигрыватель с нужным swf-файлом, и отслеживать соответствующее событие. Преподы будут в восторге.
Private WithEvents my_fplayer As ShockwaveFlash
Private my_browser As InternetExplorer

Private Sub Form_Load()
  Set my_browser = New InternetExplorer
  Set my_fplayer = New ShockwaveFlash
  my_fplayer.LoadMovie 0, "d:\zastavka.swf"
  my_fplayer.Play
End Sub

Private Sub my_fplayer_FSCommand(ByVal command As String, ByVal args As String)
  If command = "zagruzaj" And args = "my_file.asp" Then
    my_browser.Navigate "http://127.0.0.1/" & args, , , "your *post* data"
  End If
  If command = "goodbye" And args = "my_love" Then
    Set my_fplayer = Nothing
    Unload Form1
  End If
End Sub
Только надо обязательно в среде виз.бас. залезть в меню Project->References и там в списке поставить галки напротив "Microsoft Internet Controls" и "Shockwave Flash". Кстати, это называется "раннее связывание объектов".
Да, вот ещё, у меня какой-то неправильный флеш, он не работает, так что я не могу отладить эту прогу, так что это скорее "пища для ума".
Можно ещё через меню Projects->Components подцепить Эксплорер и Флеш-плеер в качестве "компонентов" на главный бейсиковский тулбар, тогда надо будет нарисовать на форме окошко-контролс этими новыми инструментами, и работать в коде с ним, как с обычным контролсом.
В общем, экспериментируйте. Никогда студент не узнаёт так много нового, как при сдаче сессии:)