Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: не работают fscommand
Flash Zone Forum > Macromedia Flash > Общие вопросы
Tolantol
Создаю новый документ. Рисую объект. Конвертирую его в movie clip.
А теперь хочу, чтобы при нажатии на этот объект закрывалось окно флеша.
Для этого пишу:
Код

on (release) {
fscommand("quit", true);
}


Проверяю,... и ничего не происходит, сколько не жми на эту кнопку.
В чем проблема?

В хелпе по флешу немного по-другому реализуется команда:
Код

my_btn.onRelease = function() {
    fscommand("fullscreen", true);
};


Однако такую реализацию сам же флеш и обругал при запуске.

tiHo
Цитата(Tolantol @ 25.07.2006 - 09:48) *

Создаю новый документ. Рисую объект. Конвертирую его в movie clip.
А теперь хочу, чтобы при нажатии на этот объект закрывалось окно флеша.
Для этого пишу:
Код

on (release) {
fscommand("quit", true);
}



надо без true:

on(release)
{
fscommand("quit");
}

Цитата(Tolantol @ 25.07.2006 - 09:48) *

В хелпе по флешу немного по-другому реализуется команда:
Код

my_btn.onRelease = function() {
    fscommand("fullscreen", true);
};


Однако такую реализацию сам же флеш и обругал при запуске.


а тут ты просто скорее всего нетуда написал код. Данный тип кода надо писать на кадр, а не на клип-кнопку.

PS> а вот fullscreen уже надо писать с параметром true или false.

Tolantol
Цитата(tiHo @ 25.07.2006 - 10:22) *

надо без true:

on(release)
{
fscommand("quit");
}


Не, не работает.

Вот мои действия (более подробно):
запускаю флеш
новый флеш документ
рисую круг (Oval)
конвертирую его в movie clip
с помощью selection tool выбираю данный объект
теперь перехожу в панель actions и ввожу вышеозначенный код
нажимаю Ctrl+Enter и пытаюсь понажимать на этот самый кружок
и ничего не происходит
MustLive
Tolantol

Как уже тебе ответил tiHo, нужно писать без true:
Код
on (release) {
    fscommand("quit");
}

Цитата
нажимаю Ctrl+Enter и пытаюсь понажимать на этот самый кружок
и ничего не происходит

Тестировать данную функцию нужно в стационарном плеере или флеш-проекте (ввиде ехе), а не в встроеном плеере. Скомпиль флешку и отдельно запускай и тестируй "quit".
Tolantol
Цитата(MustLive @ 25.07.2006 - 11:55) *


Тестировать данную функцию нужно в стационарном плеере или флеш-проекте (ввиде ехе), а не в встроеном плеере. Скомпиль флешку и отдельно запускай и тестируй "quit".


Точно! только в ехе работает
Спасибо!
tiHo
почему то у меня работает не только в EXE но и просто в SWF.
главное чтобы запускать его отдельно от редактора Flash.
MustLive
Цитата
Точно! только в ехе работает

Tolantol

Как я сказал ранее:
Цитата
Тестировать данную функцию нужно в стационарном плеере или флеш-проекте (ввиде ехе), а не в встроеном плеере. Скомпиль флешку и отдельно запускай и тестируй "quit".


Что и подвердил tiHo. Работает и в ехе и в флешке, которую запустить в плеере стационарном (а ехе-шник флеш проекта - это всего-лишь флешка + плеер).

Чтобы тестить вне ехе-шников, а работать с swf в плеере, поставь себе плеер, в частности стандартный от Макромедии. У меня на сайте доступны разные версии для скачивания (версии 6, 7 и 8).
Jox
Код
fscommand("trapallkeys","true"); //перехват клавиш включен
fscommand("showmenu","false");//отключение команд контекстного меню
fscommand("fullscreen","false");// полноэкранный режим
fscommand("allowscale","false");//запрет изменения размера фильма


на кнопке:
Код
on (release) {
fscommand("quit", true);// выход
}


Есть ещё запуск внешнего приложния по нажатию кнопки, но у меня не получается сделать. huh.gif
Tolantol
Плеер давно 8 стоит. Просто во встроенном все время проверял, вот и не получалось.

Цитата(Jox @ 26.07.2006 - 05:05) *

Есть ещё запуск внешнего приложния по нажатию кнопки, но у меня не получается сделать. huh.gif


С exec у меня получилось:
Делаешь папку fscommand, помещаешь туда свой exe и все работает. Или кидаешь в эту папку *.bat с пропиской нужной программы.

Только вот все комманды fs работают в swf, а эта (fscommand("exec","ffff.exe")), только если компилируешь в exe-флешку.



Цитата(Jox @ 26.07.2006 - 05:05) *

Код
fscommand("trapallkeys","true"); //перехват клавиш включен
fscommand("showmenu","false");//отключение команд контекстного меню
fscommand("fullscreen","false");// полноэкранный режим
fscommand("allowscale","false");//запрет изменения размера фильма




Полноэкранный режим немного не верно, надо так:
Код
fscommand("fullscreen","true");
tiHo
Цитата(Tolantol @ 26.07.2006 - 09:25) *

Только вот все комманды fs работают в swf, а эта (fscommand("exec","ffff.exe")), только если компилируешь в exe-флешку.


ето я думаю из за политики безопасности. чтобы у тебя не запустили через интернет чтото типа troyan.exe biggrin.gif laugh.gif


MustLive
Цитата
Есть ещё запуск внешнего приложния по нажатию кнопки, но у меня не получается сделать.

Возможность есть, но нужно сделать правильно и работает только из exe (flash-проекта).
Цитата
ето я думаю из за политики безопасности. чтобы у тебя не запустили через интернет чтото типа troyan.exe

Макромедия начиная с флеш 6 сделала подобные ограничения, чем усложнила жизни тем, кто для своих нужд юзал ехес в ранних версиях флеша.
Цитата
Делаешь папку fscommand, помещаешь туда свой exe и все работает. Или кидаешь в эту папку *.bat с пропиской нужной программы.

Только таким образом. И в exe-шнике. До 6й версии флеша можно было запускать любой ехе-шник, в том числе произвольно расположений (например рядом с ехе-флешкой).

Во времена 5го флеша были разработаны и использовались разные софтины к флешу, которые расширяли его функциональность. За счёт того, что из флешки запускались дополнительные программы (через ехес), которые и делали свою работу. Причём можно было ехе-шники вызывать даже из swf-ки (из плеера). Пример такой программы разработанной моим другом - Filesave, которая из флеша записывала данные на диск в произвольный файл (чего флеш до сих пор не умеет, а данная программа написана 6 лет назад в 2000).
Mari
"Делаешь папку fscommand, помещаешь туда свой exe и все работает. Или кидаешь в эту папку *.bat с пропиской нужной программы."

Приветствую уважаемое собрание !
Огромное спасибо за совет.
Воспользовалась и все получилось. У меня задача такая : вызвать с кнопочки flash Foxit Reader
и запустить в нем сразу соответствующий кнопке файл *.pdf.
А все вместе - это презентация полностью созданная во flash (не для интернета).
Раздаваться будет на дисках.

Но возникла проблема smile.gif Как "бонус" при запуске *.bat вылазит мерзкое черное окно cmd.exe.
И висит пока Foxit не закроешь.
*.bat состоит из двух строк :
@echo off
call Foxit Reader.exe 1.pdf

Дописанный туда exit не сработал. Окошко черное в принципе не мешает но достает .....

Подскажите плиз, как сделать чтоб окошко черное не вылазило ?
tiHo
может в конце дописать exit ?

пока непопробуеш, неговори што неполучится wink.gif
Mari
Цитата(tiHo @ 11.04.2007 - 21:10) *
может в конце дописать exit ?


Привет tiHo ! Пробовала, дописывала - и никакой реакции... как будто и нет его .... exit-a smile.gif
Я в досе хелп читала .....
Ну не верю я что нельзя без него (окошка мерзкого и черного).
Может кто сталкивался, знает ? Пишите, господа unsure.gif
tiHo
привет Mari! smile.gif

че за Foxit? программа Foxit Reader? может тогда нужно ее взять в кавычки...?

call "Foxit Reader.exe" 1.pdf

или попробуй пробел замени на _

call Foxit_Reader.exe 1.pdf


PS> а почему бы те не воспользоваться командой start?


PPS> вообще если у тебя только Reader.exe, то формат pdf будет открываться только с помощью нее, э ето значит что вызывать можно просто:

start 1.pdf

вот..

Mari
Привет tiHo ! smile.gif

Тяжела и неказиста жизнь простого программиста .....
Дык какая разница, call, start и иже с ними.
Вообще-то работает

call FoxitReader.exe 1.pdf

и замечательно работает.
Фишка в том чтобы после запуска Фоксита окошко cmd.exe закрывалось rolleyes.gif
tiHo
Mari! если тебе всеравно што использовать(start или call), то вот как точно работать будет:

start FoxitReader.exe

goto myhaha

:myhaha

exit


тока незнаю как насчет передачи в программу адреса открываемого файла... smile.gif попробуй
Mari
что такое myhaha ? Это 1.pdf ? blink.gif
tiHo
нет, myhaha ето простая метка кода. тоесть команда GOTO метка переводит выполнение программы на строку содержащую такую метку.

в данном случае вообще можно неписать ее. ето я так просто, на тото случай если вдруг каким то чудом незаработает такой код:

start Foxitreader.exe

exit


PS> попробуй так:

start Foxitreader.exe 1.pdf

exit

Mari
Не .... окошко не исчезает. Говорят, что и не исчезнет.
Тут надо другой способ искать. Чтоб дос не задействовать sad.gif

В умной книге про Flash MX сказано что должно работать ваще так :

fscommand ("exec", "FoxitReader.exe 1.pdf");

Но не работает хоть стреляй !!! Может где-то ошибка синтаксическая ?
tiHo
хотел бы я посмотреть в глаза тому кто такое в книге написал smile.gif

попробуй вызови просто 1.pdf
Mari
Привет тебе tiHo !

Респект и уважуха !!! Иди сюда, я тебя расцелую smile.gif) Сработал твой код :

start FoxitReader.exe 1.pdf

goto myhaha

:myhaha

exit

Исполнила танец вокруг компа .....
Вот видать myhaha ему и не хватало smile.gif)))))))
СПАСИБО.
tiHo
наздоровье smile.gif

Русская версия IP.Board © 2001-2008 IPS, Inc.