Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Насколько я вижу, здесь присваиваются значения переменных, но значения предположим уже есть, надо сформировать массив из имен переменных, и как то его в список загрузить.
Добавлено (26 Август 2009, 18:47) --------------------------------------------- или это оно и есть?
Добавлено (26 Август 2009, 18:49) --------------------------------------------- а значения переменных массива насколько я понял показываются сразу в списке...
Я просто не понял где задается n в имени переменной в массиве, а со значениями я сам присвою. Может так: Loop "1" "5" "[n]" SetVar "[Massiv[n]]" "[Parameter]" EndLoop где значение Parameter будет изменяться.
Ну пока с этим понятно... теперь надо такое же соорудить в функции, интересно, подобное построение имен массива для функции publication.NbSetVar проканает? что-то вроде этого: ...vbs цикл n publication.NbSetVar "[[Massiv][n]]", "Parameter" ...next вместо "Parameter" будет меняться vbs-функция, и мы передадим в необук готовый массив? Надо поковыряться потом с этим... Как задавать вопросы
ты хочешь сделать вывод списка запущенных сервисов?!
ну
Quote (sp3d)
почему просто не передать массив
ну его надо сперва сформировать... формироваться он будет в вбс-цикле и надо же в нем сразу присваивать значение vbs-функций в элемент массива для необука, в следующем обороте цикла значение нужной vbs-функции изменится. короче я поковыряюсь, посмотрим как должна выглядеть конструкция создания массива в функции...
Добавлено (26 Август 2009, 19:42) --------------------------------------------- если такое вообще возможно, вдруг можно передавать только фиксированные одиночные переменные - publication.nbSetVar "[Result]", Parameter а динамичное создание массива переменных функция publication.nbSetVar не схавает?
если не получится, то ничего страшного, можно в принципе и самому вводить нужный сервис. Ведь функция у нас специфичная, и тот кто ее будет юзать, уже знает для чего она нужна, а значит он уже знает с каким сирвисом ему надо работать и по случаю забьет ее в ручную.
проблема в том что требуется вводить системные имена служб, а не те которые отображаются в "Службах", например вот на моей системе скрипт сгенерировал:
Code
Service Name Service Display Name ------------ -------------------- Alerter Оповещатель A LG Служба шлюза уровня приложения AppMgmt Управление приложениями aspnet_state ASP.NET State Service Ati HotKey Poller Ati HotKey Poller AudioSrv Windows Audio AVP Kaspersky Internet Security BITS Фоновая интеллектуальная служба передачи (BITS) Bonjour Service ##Id_String1.6844F930_1628_4223_B5CC_5BB94B879762## Browser Обозреватель компьютеров CiSvc Служба индексирования ClipSrv Сервер папки обмена clr_optimization_v2.0.50727_32 .NET Runtime Optimization Service v2.0.50727_X86 COMSysApp Системное приложение COM+ CryptSvc Службы криптографии DbService Personnel Database DcomLaunch Запуск серверных процессов DCOM Dhcp DHCP-клиент dmadmin Служба администрирования диспетчера логических дисков dmserver Диспетчер логических дисков Dnscache DNS-клиент Dot3svc Автонастройка проводного доступа EapHost Служба протокола EAP ERSvc Служба регистрации ошибок Eventlog Журнал событий EventSystem Система событий COM+ и т.д.
как вы поняли вводить нада будет значения слева, а откуда вы их знать будете, пока не прошарите по системе? вот я и хочу как-то визуализировать процесс выбора службы.
Добавлено (26 Август 2009, 23:43) --------------------------------------------- тупой вопрос - есть в нб обьект чтобы был с полосой прокрутки (типа как в ммб обьект Paragraph) чтоб можно было большой текст из переменной вставлять ? можно просто в нем отобразить приведенный список и все...
тупой вопрос - есть в нб обьект чтобы был с полосой прокрутки (типа как в ммб обьект Paragraph) чтоб можно было большой текст из переменной вставлять ? можно просто в нем отобразить приведенный список и все...
Можно воспользоваться объектом Article, но для него нужен внешний файл, а можно обычным текстовым полем TextEntry, только в настройках установить "многострочный" и другие необходимые функции.
проблема в том что требуется вводить системные имена служб, а не те которые отображаются в "Службах"
Quote (DEMBEL)
Alerter Оповещатель A LG Служба шлюза уровня приложения AppMgmt Управление приложениями aspnet_state ASP.NET State Service Ati HotKey Poller Ati HotKey Poller
Кому надо разберется! каму не надо, нефиг лазить, где не надо(иначе такого натворят), как говорится "в худых руках-стекляный * не надолго", а кому надо и не знает где это, то вот тут "Пуск-->Панель управление-->Администрирование-->Службы" Выбираем из списка нужный сервис по нему дубл-клик, в открытом диалог.окне в верху бедет имя сервиса(службы). Но лучше просто так не лазить, а тока со знанием дела!
Добавлено (29 Август 2009, 00:38) --------------------------------------------- DEMBEL, что то я не могу найти тему, где ты писал вбс для кодировки
файл действительно сохраняется в новой кодировке, но эта хрень c % не меняется. ты уверен что это вобще можно перекодировать
Добавлено (29 Август 2009, 01:20) --------------------------------------------- а, так это кириллица... тогда понятно в чем дело. тут есть особенности...
походу, все равно ничего не получается с парсером, чтоб распарить теги, стока кодерства, все пытаюсь сделать как нибудь компактно и в уроки или готовые. Так что кирилицу не кодирует?!
Добавлено (29 Август 2009, 01:31) --------------------------------------------- ладно, заморозим до завтра, всеравно туплю, пойду шпать
Сообщение отредактировано sp3d - Сб, 29 Августа 2009, 01:32
дело в том, что это формат строки ASCII - это DOS-кодировка, а русские символы она не понимает, чтобы сделать на русском, грубо говоря надо перевести формат строки в ANSI/Unicode, там кирилица поддерживается и кодировка распознается (как Windows-1251). А это несколько другая история. ну вот как мог обьяснил... я могу и это прикрутить к функции. Как задавать вопросы
дело в том, что это формат строки ASCII - это DOS-кодировка, а русские символы она не понимает
Ну это вовсе не так. Растолкую, не надо путать кодировку символов с их наборами. Текст хранится в виде кодов, есть ряд стандартных кодировок, ниже восьми бит мы и упоминать не будем. Восемь бит-байт, позволяют определить 256 символов, не только печатных, но и управляющих. Собственно изображение символа, соответствующего тому или иному коду определяется в таблице описывающей графический набор знаков. В них описана попиксельная матрица изображения символа, которая может иметь разные размеры. Замечу, что это соответствие стандартизировано, но никто не запрещает вам сделать свой набор, как по соответствию кода графическому изображению, так и по размеру матрицы и стилю написания символа. Редакторы фонтов этим и занимаются. При такой системе, изображение символа напрямую зависит от примененного набора графического представления, и когда вы видите кракозяблы вместо текста, то это по причине неправильно выбраного набора. Кроме однобайтных систем кодирования применяются и многобайтные, к примеру 2 байтный код позволяет закодировать 65536 символов, в таких системах уже возможно описать не один национальный алфавит, без передергивания всевозможных наборов. Все эти сложности, и наличие большого числа вариантов кодирования связано с развитием, поначалу просто никто не предполагал что такие вещи когда нибудь понадобятся, а так как этими делами занималась не одна контора, то в результате мы и получили такое множество. В свете вышеизложенного, вы должны понять что в "тексте" нет никаких букв, есть только цифры, тогда все проблемы с перекодировками предстанут совсем в ином свете. Самым быстрым способом являются табличные преобразования, и не только для смены кодировки символов, но и в любых иных случаях. Применительно к конкретной нужде, применим такое преобразование для перекодировки однобайтового кодирования в 2 байтовое. Создадим массив длиной 256 индекс массива это код однобайтового символа, содержимое по данному индексу содержит код символа в 2 байтовой кодировке. Теперь перекодируем, берем текст по одной букве, определяем ее код, и по индексу равному полученному коду находим соответствие с 2 байтовым кодом. Конечно, это есть упрощеная модель преобразований, но описывающая ее суть. Для реальных действий вы должны познакомится с форматом каждой конкретной кодировки, в некоторых кодировках в начале файла присутствует служебный код, так называемый дескриптор, который указывает с какой кодировкой мы имеем дело, ну и конечно вы должны будете добавить соответствующий дескриптор в начало вашего перекодированного текста. Обратные перекодировки осущевствляются аналогично. К стати, подобная мутота есть уже в готовом виде в каждой операционке, так что как вариант, можно применить эти функции в виде плагина.
Дата: Вт, 01 Сентября 2009, 08:15 | Сообщение # 89
Наш дизайнер
Администраторы
Сообщений: 5959
Offline
название dos он не поймет. вроде бы чтоб перевести кириллицу из дос кодировки в виндовс там нужно переназначить коды и символы в наборе. вот например смотри тут дос cp1251. для этого надо отдельный скрипт написать чтоб брал hex-значение дос кодировки и находил соответствующее в виндовс-1251. Если я ничего не путаю...
можно, щас там используются системные операторы перекодировки, но они с дос не работают. гляжу для английских букв дос и виндовс1251 код. соответствуют, а для кириллицы нет, ну это алгоритм пересчета нужно придумать. или если приспичило мож кто плагин сделает. Как задавать вопросы
Дата: Вт, 01 Сентября 2009, 11:36 | Сообщение # 90
Друг клуба ММВ
Проверенные
Сообщений: 2713
Offline
Не забывайте, что у однобайтовых систем работает кодировка плюс набор символов, не путайте коды и наборы.
Quote (DEMBEL)
чтоб брал hex-значение дос кодировки и находил соответствующее
Именно так и надо, текст и есть набор hex-значенией, а собственно символами они становятся при их визуализации, и как они будут выглядеть зависит от "оптического фильтра", которым является набор символов. Который описывает не только внешний вид символа (фонт, атрибуты...) но и соответствия между кодами и изображением.
Quote (DEMBEL)
виндовс1251
Это кодовая страница смвольного набора, другими словами, представте себе страничку имеющую 256 клеточек это таблица ASCII, в части этой таблицы имеется окно, через которое протягивается пленка с кадрами, тем самым меняя ее содержимое в данной части. Эта пленка и содежжит кадры с нац. символами, мы используем кадр с именем 1251. Таким образом, что бы увидеть нужные буквы надо не только что бы был нужный исходный код символа (его хекс значение) но и стоял нужный кадр. Вообще, накрутили с кодировками порядочно, и так, что бы делать все преобразавания корректно, вам надо изучить все ньюансы этого бедлама. Проверку корректности преобразований нужно делать не по внешнему виду текста, а сравнивая полученный текст в хекс редакторе, на соответствие получившихся кодов. Визуализация одного и того же кода может быть разной в разных елементах отображения, Пленку с кадрами могут передергивать и система и сам элемент показа, в зависимости от его настройки. Так что сделайте эталонные файлы с нужными кодировками и отдним и тем же текстом, и сравнивайте полученные при преобразовании коды с этими эталонами. Если там все в порядке, то разница только в настройке элементов показа, или системы.