Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   {mdm}Zinc (http://www.flasher.ru/forum/showthread.php?t=81193)

MaxD 09.02.2007 12:59

Здравствуйте!
Никак не могу найти в Zinc, как получить список локальных дисков моего компьютера?

alexcon314 12.02.2007 10:30

Ссылка
 
Код:

this.createTextField("driveList", 1, 20, 20, 200, 300);
driveList.text="Список логических дисков:"+ newline;
var kernel32 = new mdm.DLL(mdm.System.Paths.windows + "\\system32\\kernel32.dll");
var numDrives:Number = 1 * kernel32.call("integer", "GetLogicalDrives");
kernel32.close();
var driveLettersMask:Array = numDrives.toString(2).split("");
startChar = 65 + (driveLettersMask.length - 1);
// добавляем в список логические диски системы
for (i = driveLettersMask.length - 1; i >= 0; i--) {
        if (driveLettersMask[i] == "1") {
                var driveLetter:String = String.fromCharCode(startChar - i);
                driveList.text += "Диск " + driveLetter + ":" + newline;
        }
}

под XP работает, под 98 не пробовал :bye:
или http://www.multidmedia.com/support/d...ion=show&id=26

Alexandor1984 12.02.2007 13:44

Цитата:

Сообщение от alexcon314
Здравствуйте. Небольшое сообщение на тему "правая кнопка" (наверно, перемещать не стоит)
Код:

onEnterFrame=function(){
        if (Key.isDown(2)) {
        //(code) by ex.: your_ShowMenu_function(); or broadcasterObj.broadcastMessage("onRightClick");
        }
}

Известный, наверное, многим способ отлова правого клика. Например, чтобы задействовать контекстное меню.
В цинке есть свой объект контекстного меню, но оно имеет сугубо виндовый внешний вид и не поддается кустомизации, вложенный пункт в него не встроишь... Но что хорошо в цинке - напрочь глушится стандартное контекстное меню проигрывателя :). Вышеприведенный код позволяет вывыводить меню любого вида (какое нарисуете) и любого содержания. Я, например, использую mx.controls.Menu. Надо только при компиляции в цинке указать Right Mouse Button Ignored. Именно, Ignored. Иначе, стандартное меню вывалится-таки.. Вобщем, цинк здесь на высоте :).
Есть еще пример, как прикрутить прогрессбар к файловым операциям и примерчик типа "hello world" на тему разработки своих dll для цинка, но не сейчас..

Это все круто, но как это сделать во Flex2?

MaxD 02.03.2007 17:59

Вопрос: как можно получить параметры языковой панели (текущий язык ввода) и менять их?

alexcon314 05.03.2007 01:39

Раскладка
 
Код:

var user32 = new mdm.DLL(mdm.System.Paths.windows + "\\system32\\user32.dll");
var parameter1 = user32.addParameter("integer", "1");
var parameter2 = user32.addParameter("integer", "8");
createTextField("out1", 1, 20, 20, 200, 20);
out1.type = "dynamic";
out1.border = true;
createTextField("out2", 2, 20, 50, 200, 200);
out2.type = "input";
out2.multiline = true;
out2.border = true;
go.onRelease = Go;
function Go() {
        var res = user32.call("boolean", "ActivateKeyboardLayout");
        out1.text = res;
}

out1 - это текстовое поле вывода, go - кнопка.
Жми на кнопку, вводи текст в поле ввода out2 и смотри что будет...:eek:
С параметрами можно поэкспериментировать.
Раскладка меняется только для окна проигрывателя.
За подробностями и расширением функционала кода обращайся к WIN API.
Да.. XP требуется.. вроде как.

MaxD 05.03.2007 15:57

Спасибо, сейчас попробую.

alexcon314 06.03.2007 08:47

Вдогонку
 
Наряду с mdm.DLL (самым на мой взгляд полезным инструментом цинка) есть еще очень хороший инструмент заставить цинк-приложение выполнять разного рода функции. mdm.FileSystem.saveFile позволяет скидывать динамически сгенерированный скрипт (VBS, JS, HTML) на диск и затем mdm.System.exec его запускать. (Если скрипт маленький, то mdm.SystemVBScript.execute без сохранения на диск). Я использовал это для генерации отчетов в форматах HTML, WORD - очень понравилось:o
Мощная справка по скриптам http://www.blindprogramming.com/ftp/...scrdoc56en.exe и куча ссылок http://www.blindprogramming.com.
И еще одно. Может быть не очень серьезно.
Цитата:

mdm.Database.MySQL.runQuery(query:String):Boolean
Parameters
query:String Correct SQL string with SELECT, INSERT, UPDATE or DELETE statement to be executed.
Это строки из help'a Zinc. Я почему-то прочитав их уперся в мысли, что только упомянутые типы запросов цинк корректно шлет на сервер MySql:bb: . Однако, это не так. В цинк встроен полноценный(!) mysql-клиент. Работает все, что может работать. create db, show, grant. В запрос можно встраивать функции (now(), concat() и пр.), join без проблем... Так что возможностей хоть отбавляй!

alexcon314 18.04.2007 00:15

Zinc->Shh->Linux->Bash
 
Здравствуйте.
Продолжая эксперименты с цинком, я столкнулся с такой проблемой.
Есть клиентская программа (цинк+windows). Ее задача - работа с файлами и папками на сетевом ресурсе, который расположен на сервере (Linux+Samba). Есть сложности с взаимодействием win-приложений с шарами на Linux в плане назначения атрибутов файлам/папкам. Для их преодоления я решил использовать утилиту Plink.exe (Putty command line tool), с помощью которой производится коннект с Linux-машиной по Shh и передается ( и выполняется, конечно) динамически формируемая команда оболочки bash. На пример, chmod 0755 path_to_somefile или chown user:group path_to_somefile. Все прекрасно работает до тех пор, пока в path_to_somefile отсутствуют ... да-да, именно - символы кирилицы. Сами по себе русские имена на линуксе нормально воспринимаются. Видимо, в момент передачи параметра Plink-у эта программа не может их как надо передать. В этом меня убеждет echo path_to_somefile >> my.log с каждой командой, а потом просмотр лога в линуксе - буквы попрежнему русские, но не те..
С папками/файлами на Samba обычные операции - delete,make,copy...- из цинка проходят нормально, и с русскими именами в т. ч. Но мне нужно именно менять атрибуты.
В поиске (кл.слово-кодировка) в основном обсуждаются проблемы взаимодействия флэша с php-скриптами.
Можно ли как-то перекодировать строку команды средствами только флэша?
Код:

var StdOut = mdm.System.execStdOut("plink -ssh hostname -l user - pw passwd command");

alexcon314 19.04.2007 18:46

Проблема решилась. Просто. Ремапом символов. Настроить Plink нужным образом не удалось. Правда, пока копался в исходника Plink-а, смог попутно настроить его на автоматическое сохранение ключа сессии без запроса (y/n).

rty 22.04.2007 02:28

Делал недавно авторан с видеопроигрывателем на Цинке. Понял, что косяков возникает немеренно по причине того, что используются всякие виндовс-медиа, квиктаймы... В зависимости от версии установленного плеера на разных машинах цинковский видеоплеер ведет себя по-разному... Сначала меня привлекла легкость расширения функционала флэша, однако думаю, что придется вернуться все-таки к Директору и MPEG Advance Xtre... Кто как выкручивается?


Часовой пояс GMT +4, время: 21:57.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.