Ru-Board.club
← Вернуться в раздел «Программы»

» Autoplay Media Studio

Автор: tavria2
Дата сообщения: 05.12.2006 11:58
Lexua

Цитата:
Окно, это просто графический объект, не более, но иллюзия неплохая

Да, но твоя иллюзия рассыпется при использовании на странице объектов типа ListBox, Input и т.д., т.к. они всегда будут находиться на переднем плане и картинкой их не перекроешь. В принципе можно скрывать такие объекты, но только если они полностью перекрываются картинкой, а если нет...? Вообщем все зависит от частного случая.
Автор: NightW0lf
Дата сообщения: 05.12.2006 14:09
tavria2
Почему-то толком смена курсоране работает!
Если я весь этот код вписываю в On Show то мой курсор отображается пока действует «Application.Sleep(5000);» (т.е. 5 секунд) и потом все обратно возвращается на стандартный, а если код пишу в On Preload то вообще не работает.
Автор: GOOSE
Дата сообщения: 05.12.2006 14:37
NightW0lf
Парни и девушки!
Если tavria2 пишет вам пример кода, то это не значит, что его нужно тупо копипэйстить!!!
Ну, блин, если хотите разобраться, то хотя бы пытайтесь научиться ЧИТАТЬ код! Тем паче, что в примерах каждая строка имеет комментарии...
Эдак нифига не получится хорошего И у помогающего желание пропадет и вы уйдете обиженными, что вам не помогли...

ЗЫ Наводка: "восстанавливаем курсор" ни о чем не говорит?
Автор: tavria2
Дата сообщения: 05.12.2006 15:12
GOOSE cпасибо за понимание.
Цитата:
... это не значит, что его нужно тупо копипэйстить!!!
Об этом уже неоднократно говорилось, но народ не хочет видеть эти замечания, также как и анализировать код .

Цитата:
Эдак нифига не получится хорошего И у помогающего желание пропадет...
Это точно.
Автор: Dgikar
Дата сообщения: 05.12.2006 15:54

Цитата:
Об этом уже неоднократно говорилось, но народ не хочет видеть эти замечания, также как и анализировать код

А мне кажетЦа, шо спрашивающие просто расчитывают на то, что или tavria2
GOOSE за них напишут их программу (читай код)
Автор: BLACK ROZE
Дата сообщения: 05.12.2006 18:12
tavria2
Спасибо за быструю помощь, но у меня все равно ничего не получается.
Скопировала код. Заменила на свой файл. При предварительном просмотре сначала идет все нормально. Выбирается папка. Появляется запрос о перезаписи файла. А дальше выскакивает "ошибка копирования". Сам файл находится в AutoPlay\Programs\ezcddax.exe. И должно получится:

Цитата:
Код:lFlag = true;
cPathSource = _SourceFolder.."\\ezcddax.exe";
cPathDest = Dialog.FolderBrowse("Выберите папку:", _DesktopFolder);
if (cPathDest ~= "CANCEL") then -- нажата кнопка "OK"
if (File.DoesExist(cPathDest.."\\ezcddax.exe")) then -- если в папке назначения найден оригинальный файл
nBtn = Dialog.Message("Подтверждение замены файла", "Папка уже содержит файл \"ezcddax.exe\".\r\nЗаменить имеющийся файл?", MB_OKCANCEL, MB_ICONQUESTION, MB_DEFBUTTON1);
if (nBtn == IDCANCEL) then -- нажата кнопка "Отмена"
lFlag = false; -- флаг запретить копирование
end
end
if (lFlag) then -- копирование разрешено
File.Copy(cPathSource, cPathDest, true, true, false, true, nil); -- копирование
error = Application.GetLastError(); -- проверка ошибки копирования
if error ~= 0 then -- есть ошибка
Dialog.Message("Ошибка", "Ошибка при копировании файла!", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);
else -- нет ошибок
Dialog.Message("Сообщение", "Копирование файла удачно завершено!", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
end
end
end

Вроде все как и должно быть, а не получается. А еще у меня заморочки с переносом строки в всплывающей подсказке. Все коды вставляю, как написано в примере, но строка все равно не делится. В чем причина? Может нужны какие-нибудь плагины к проге для решения проблем? У меня версия AutoPlay Media Studio v. 6.0.3.0 + руссификатор + бонуспак. Если да, то какие? С английским не дружу. Но имеется переводчик.

Кое-что хочу добавить. Не ругайтесь сильно, но что поделать, если не умеем мы "ЧИТАТЬ КОДЫ". Я бы с удовольствием взяла бы пару уроков. Даже если в примере все расписано и разложено по полочкам, мне очень трудно разобраться с этим.
Автор: tavria2
Дата сообщения: 05.12.2006 20:06
BLACK ROZE

Цитата:
Появляется запрос о перезаписи файла. А дальше выскакивает "ошибка копирования". Сам файл находится в AutoPlay\Programs\ezcddax.exe.

Твоя проблема в указании пути к файлу "ezcddax.exe". Путь указанный в примере, указывает на то, что "ezcddax.exe" находится в одной папке с файлом "autorun.exe" и папкой "Autoplay". Т.к. реально файл находится не рядом с папкой "Autoplay", а в "Autoplay\Programs" - нужно указать путь к файлу "ezcddax.exe" относительно "autorun.exe" (глобальная переменная _SourceFolder - возвращает путь к "autorun.exe"):
Код: cPathSource = _SourceFolder.."\\Autoplay\\Programs\\ezcddax.exe";
Автор: samson1
Дата сообщения: 05.12.2006 21:23
Да. Смотрится действительно приятно и красиво, но насколько я понял AMS не поддерживает многооконность.
При покупке диска "Gold Soft", соответственно с программами, и вот именно там, я пронаблюдал выполнение созданным AMS, "двойных" окон (свойства autorun-AutoPlay Menu Studio).
Автор: GOOSE
Дата сообщения: 05.12.2006 22:13
Парни!
Многооконность теоретически можно организовать отдельными проектами...
Но только заморочек немеряно... Я пытался это раз сделать. На этапе "увязывания" этих окон (по сути - разных приложений) я понял всю безперспективность для меня этого занятия
Автор: BLACK ROZE
Дата сообщения: 06.12.2006 00:05
Я имела ввиду
Цитата:
Перенос строки во всплывающей подсказке от GOOSE
.
Вот, например, создаю, как в примере, Button1, Button1, Image1, Label1. Вставляю коды в глобальные функции и в On Show. При просмотре при наведении на объект мышкой строчка в всплывающей подсказке не делится. Что я не так делаю? Нужно ли писать этот текст всплывающей подсказки и в атрибутах объекта или только в кодах?

Цитата:
Page.StartTimer(50) --ставишь, сколько нужно
- это я так понимаю время задержки всплывающей подсказки, верно?
Автор: GOOSE
Дата сообщения: 06.12.2006 08:18
BLACK ROZE

Цитата:
Что я не так делаю?

Розочка! Ну трудно сказать, что именно... Точно знаю, что раз не работает, значит что то действительно не так
...Обозначение переноса строки (\r\n) в места, где должна "делиться" подсказка вставляла?
Если не угадал, скинь мне пример, посмотрю и подскажу
Автор: Kindly
Дата сообщения: 06.12.2006 12:00
NightW0lf

Цитата:
А возможно ли как-нибудь сделать так чтобы если одна копии “autorun.exe” уже запущена, то другую копию моего “autorun.exe” нельзя будет запустить?

Сорри за опоздание, tavria2 все указал правильно, но хотелось бы еще указать тот вариант, который когда-то использовал в своих проектах:
Actions => On Startup:

instances_of_file = 0;
file_to_check_for = "autorun.exe";
processes = Window.EnumerateProcesses();

for j, file_path in processes do
file = String.SplitPath(file_path);
if (String.Lower(file.Filename..file.Extension)) == file_to_check_for then
instances_of_file = instances_of_file + 1;
end
end

if instances_of_file > 0 then
Window.Hide(Application.GetWndHandle());
Dialog.Message("Ошибка запуска", "Для запуска данного меню завершите процесс 'autorun.exe'.");
Application.Exit(0);
else
Window.Show(Application.GetWndHandle());
end

Автор: NightW0lf
Дата сообщения: 08.12.2006 20:06
Кто нибудь, помогите разобраться мне с этим кодом для сменны курсора.
Или хотя бы дайте подсказку мне, на каком событии надо писать этот код и что в этом коде не так!

Код: -- Сохраняем текущий курсор
function SaveCursor()
local OldCursor = DLL.CallFunction(_SystemFolder.."\\User32.dll", "GetCursor", "", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
return OldCursor
end

-- Загружаем курсор из файла и отображаем
function LoadCursor(cFileName)
local NewCursor = DLL.CallFunction(_SystemFolder.."\\user32.dll", "LoadCursorFromFileA", "\""..cFileName.."\"", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
local retVal = DLL.CallFunction(_SystemFolder.."\\User32.dll", "SetCursor", NewCursor, DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
end

-- Восстанавливаем старый курсор
function RestoreCursor()
local retVal = DLL.CallFunction(_SystemFolder.."\\User32.dll", "SetCursor", SaveCursor(), DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
end

cFileName = _WindowsFolder.."\\Cursors\\hand.ani"; -- путь и имя файла курсора
SaveCursor(); -- Сохраняем текущий курсор
LoadCursor(cFileName); -- Загружаем курсор из файла и отображаем
Application.Sleep(5000); -- Замораживаем проект на 5 сек
RestoreCursor(); -- Восстанавливаем старый курсор
Автор: Lexua
Дата сообщения: 08.12.2006 21:23
NightW0lf
Ну ты хоть проблему опиши, что с кодом не получается. Если хочшь, чтобы курсор менялся при наведении на объект пиши
Цитата:
cFileName = _WindowsFolder.."\\Cursors\\hand.ani"; -- путь и имя файла курсора
SaveCursor(); -- Сохраняем текущий курсор
LoadCursor(cFileName); -- Загружаем курсор из файла и отображаем

в On Enter
Функции лучше сделать Global
RestoreCursor() вызывать на On Leave
Application.Sleep(5000) - заремарить. Ведь это пример, который ты должен адаптировать под свои задачи.
Автор: tavria2
Дата сообщения: 08.12.2006 23:37
Всем привет!

Может кому-то пригодится. В свое время было модным делать защиту своих программ, привязываясь к оборудованию, в частности к серийному номеру жесткого диска.
Выкладываю пример, с помощью которого можно получить следующую информацию о жестких дисках в вашей системе:Кол-во жестких дисков
Серийный номер
Номер модели
Номер ревизии
Размер кэша
Кол-во цилиндров (у меня не совпало с реальным...)
Кол-во головок
Кол-во секторов
Поддерживаются следующие платформы: Windows 95 OSR2, Windows 98, Windwos 98SE, Windows ME,
Windows NT4, Win2000(Srv&Pro),Win XP(Home&Pro) и Win2003.

HDD-Info.apz (178 кб).
Автор: JamesMcAlt
Дата сообщения: 09.12.2006 06:50
Привет всем!!
Я уже давно работаю с AMS 6, но сейчас возникла необходимость, сделать вот что:
1. Как можно создать базу данных с поиском и выводом информации?(делал на HTML и JavaSc, но файлы остаются не защищенными.)
2. Нужно реализовать вход на страницу через пароль(к примеру жмешь на кнопку выходит предложение ввести пароль и при правильном переходит)
Если сможете подскажите, нет времени читать весь форум, или просто кинте линки
Автор: Andreyrr
Дата сообщения: 09.12.2006 07:52
Помогите разобраться
Необходимо чтобы файл открывался по двум путям,, то есть он может быть по одному из двух путей
Код:

-- Получить выбранный элемент из Окна списка
tSelected = ListBox.GetSelected("ListBox1");

-- Проверить, что элемент выбран
if tSelected then
     -- при двойном щелчке, должен быть выбран только один элемент
    -- However, just to be safe, we will traverse the table
    for nTableIndex, nListBoxIndex in tSelected do
        -- Получить путь к выбранному файлу (сохранить в переменной sFilePath)
        sFilePath = Input.GetText("InputPhoneWork");
end
         --Открыть выбранный файл
        File.Open("AutoPlay\\Docs\\Komp\\"..sFilePath, "", SW_MAXIMIZE);
        File.Open("AutoPlay\\Docs\\PDF\\Komp\\"..sFilePath, "", SW_MAXIMIZE);
        --File.Open(sFilePath, "", SW_MAXIMIZE);
    
end

error = Application.GetLastError();
if (error ~= 0) then
Dialog.Message("Файл не найден", "Вставьте диск JURNAL", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);
end

Все работает, если файла нет по первому пути, он открывается по второму.
Но проблема с диалогом об ошибке, когда файла нет по двум путям все нормально выскакивает диалог "Файл не найден"
Когда файл по второму пути, тоже нормально, диалог не показывается
А вот когда файл по первому пути, файл открывается, но выскакивает диалог обошибке "Файл не найден"

Подскажите что делаю не так.
Заранее спасибо.
Автор: Lexua
Дата сообщения: 09.12.2006 10:15
Andreyrr


Цитата:
--Открыть выбранный файл
File.Open("AutoPlay\\Docs\\Komp\\"..sFilePath, "", SW_MAXIMIZE);
File.Open("AutoPlay\\Docs\\PDF\\Komp\\"..sFilePath, "", SW_MAXIMIZE);
--File.Open(sFilePath, "", SW_MAXIMIZE);

Здесь у тебя проблема. Ты просто пытаешься открыть файл по двум путям, а надо сделать проверку на наличие файла.
Использование Application.GetLastError(); излишне...

Ну например так попробуй

Код: path1 = File.DoesExist("AutoPlay\\Docs\\Komp\\"..sFilePath);
path2 = File.DoesExist("AutoPlay\\Docs\\PDF\\Komp\\"..sFilePath);
if path1 then
File.Open("AutoPlay\\Docs\\Komp\\"..sFilePath, "", SW_MAXIMIZE);
elseif path2 then
File.Open("AutoPlay\\Docs\\PDF\\Komp\\"..sFilePath, "", SW_MAXIMIZE);
else
Dialog.Message("Файл не найден", "Вставьте диск JURNAL", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);
end
Автор: NightW0lf
Дата сообщения: 09.12.2006 18:01
У меня вот вопрос такой: можно как нибудь сделать чтобы "autorun.exe" при запуске плавно появлялся, а при выключении плавно исчезал?
Автор: tavria2
Дата сообщения: 09.12.2006 22:07
NightW0lf

Цитата:
можно как нибудь сделать чтобы "autorun.exe" при запуске плавно появлялся, а при выключении плавно исчезал?

Вот пример с форума IndigoRose, плавное появление окна приложения - разбирайся.
fade.apz (155.7 Кб).
Автор: BLACK ROZE
Дата сообщения: 09.12.2006 22:15
tavria2
А можно этот примерчик скачать без регистрации?
Автор: tavria2
Дата сообщения: 09.12.2006 22:20
BLACK ROZE

Цитата:
А можно этот примерчик скачать без регистрации?

Сорри, об этом не подумал...
fade.apz (155.7 Кб).
Автор: NightW0lf
Дата сообщения: 09.12.2006 22:54
tavria2
Да я скачал его уже давно только не понял, как сделать плавное исчезновение?
Если сможишь то подскажи.
Автор: tavria2
Дата сообщения: 10.12.2006 01:23
NightW0lf
Переработанный пример:
FadeInOut.apz (157 Кб).
Автор: NightW0lf
Дата сообщения: 10.12.2006 11:06
tavria2
Спасибо за помощь с "FadeInOut"!
Но я все-таки так и не смог понять, как правильно работает смена курсора?
Ошибок не выдает, но и не работает!

Буду очень признателен за помощь!
Автор: Lexua
Дата сообщения: 10.12.2006 11:41
JamesMcAlt

Цитата:
Привет всем!!
Я уже давно работаю с AMS 6, но сейчас возникла необходимость, сделать вот что:
1. Как можно создать базу данных с поиском и выводом информации?(делал на HTML и JavaSc, но файлы остаются не защищенными.)
2. Нужно реализовать вход на страницу через пароль(к примеру жмешь на кнопку выходит предложение ввести пароль и при правильном переходит)
Если сможете подскажите, нет времени читать весь форум, или просто кинте линки


На счет первого не скажу, не было потребности в таких базах.
А второй вопрос можно было и в справке посмотреть раз давно работаешь

Код: -- the correct password "valid"
real_password = "valid";

-- prompt the user to enter a password
user_password = Dialog.PasswordInput("Password", "Please enter the password: ", MB_ICONQUESTION);

-- compare the user's password to the correct password.
-- If the user supplies the wrong password, exit the program.
if real_password ~= user_password then
Application.Exit();
end
Автор: GOOSE
Дата сообщения: 11.12.2006 09:30
JamesMcAlt
По первому вопросу: а что мешает использовать SQLite? Плагин есть, функционал базы почти взрослый Правда с поиском придется повозиться, но решаемо.
Автор: BLACK ROZE
Дата сообщения: 11.12.2006 22:22
Хочу вернуться к вопросу о копировании всего\части текста. Вопрос в том, как разрешить копирование, но запретить редактирование текста?
в проекте имеется Input и ComboBox. В свойстах каждого ставлю - "Возможность редактирования".
В данном случае, возможно и копирование, и редактирование текста.
Случай с установкой плагина Clipboard не совсем подходит, так как в кодах записывается уже готовый текс, а мне нужно выбрать определенное значение (например, из ComboBox).
Автор: GOOSE
Дата сообщения: 11.12.2006 22:47
BLACK ROZE

Цитата:
Случай с установкой плагина Clipboard не совсем подходит

Почему???

Цитата:
так как в кодах записывается уже готовый текс, а мне нужно выбрать определенное значение (например, из ComboBox).

А что мешает передать выбраный текст в переменную, которую потом поместить в буфер?
Может объяснишь подробнее?

ЗЫ Завтра скину пример
Автор: GOOSE
Дата сообщения: 12.12.2006 08:02
Обещаный пример:
TextCaret_rus.apz (13,36 Кб).

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Matrix Screensaver


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.