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

» Autoplay Media Studio

Автор: tavria2
Дата сообщения: 28.10.2008 00:42
lorents

Цитата:
у тебя какая версия AMS?

AMS 7.5.1000.0
Автор: lorents
Дата сообщения: 28.10.2008 08:04
tavria2


Цитата:
AMS 7.5.1000.0

у меня тоже,

скинь мне пожалуйста твой пример с уже созданным exe файлом, я проверю на других компах, может у AMS глючит
Автор: lorents
Дата сообщения: 28.10.2008 14:57
сейчас протестировал на компьютере где винда 2000, тот же глюк с проверкой версии
Автор: tavria2
Дата сообщения: 28.10.2008 15:51
lorents
См. личку.
Автор: tavria2
Дата сообщения: 28.10.2008 18:55
Вышел новый релиз AMS 7.5.1004.0 (подробнее).
Автор: lorents
Дата сообщения: 28.10.2008 20:21

Цитата:
Вышел новый релиз AMS 7.5.1004.0 (подробнее).

и почти все баги связаны с диалоговыми окнами

Добавлено:
tavria2

Цитата:
Тебе, что примера мало? Там же есть установка фокуса на web-объект - сделай по аналогии на pdf.

а вот в этом проблема что фокус устанавливается на web а не на pdf файл который открывается через web и поэтому и не работает, я как раз это понял когда ты прислал свой пример
Автор: tavria2
Дата сообщения: 28.10.2008 21:23
lorents
Чесно говоря до меня только, дошло что ты пытаешся распечатать pdf-документ из web-объекта, почему-то решил, что ты открываешь документ с помощью плагина PDF.

Я вообще не понимаю зачем такие извращения, ведь pdf-документ открывается вместе с панелью управленя, через которую можно вызвать печать.
Автор: lorents
Дата сообщения: 28.10.2008 21:39
tavria2

Цитата:
Чесно говоря до меня только, дошло что ты пытаешся распечатать pdf-документ из web-объекта, почему-то решил, что ты открываешь документ с помощью плагина PDF.

а с плагином все легко, там есть функция печати которая вызывает диалогов окно печати, правда он сильно глючит, например если использовать плагин то при выключении проекта, проект остается в диспетчере задач.

Цитата:
Я вообще я не понимаю зачем такие извращения, ведь pdf-документ открывается вместе с панелью управленя, через которую можно вызвать печать.

просто у меня объект web должен быть не видим пользователю

не знаешь как сделать такое, клик левой кнопки мыши в определённом месте объекта web?
Автор: tavria2
Дата сообщения: 28.10.2008 22:50
lorents

Цитата:
не знаешь как сделать такое, клик левой кнопки мыши в определённом месте объекта web?

Ты имеешь ввиду программный клик мышки?
Автор: lorents
Дата сообщения: 28.10.2008 22:55
tavria2

Цитата:
Ты имеешь ввиду программный клик мышки?

одним словом простой щелчок мышкой на объект web в определённом месте

Добавлено:
если не ошибаюсь программный клик мыши это

Код: Page.ClickObject("Button1");
Автор: tavria2
Дата сообщения: 29.10.2008 09:17
lorents

Цитата:
если не ошибаюсь программный клик мыши это ...

Нет, это выполнение скрипта из события Click, а я имел ввиду эмуляция клика мышки в указанном месте.
Но я бы не советовал использовать такой подход, т.к. это не красиво когда мышка делает перемещение без твоего участия.

Попробуй следующий код, вместо Page.SetFocus("Web1");:
Исправленно.
Код: hWnd = Web.GetProperties("Web1").WindowHandle;
hWnd = DLL.CallFunction("user32.dll", "FindWindowExA", hWnd..",0,0,0", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
hWnd = DLL.CallFunction("user32.dll", "FindWindowExA", hWnd..",0,0,0", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
hWnd = DLL.CallFunction("user32.dll", "FindWindowExA", hWnd..",0,0,0", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
hWnd = DLL.CallFunction("user32.dll", "FindWindowExA", hWnd..",0,0,0", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
DLL.CallFunction("user32.dll", "SetFocus", hWnd, DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
Автор: lorents
Дата сообщения: 29.10.2008 13:20

Цитата:
Попробуй следующий код, вместо Page.SetFocus("Web1");:

все работает спасибо!, ТЫ МОЗГ!

Цитата:
Но я бы не советовал использовать такой подход, т.к. это не красиво когда мышка делает перемещение без твоего участия.

что-то я этого не заметил, сейчас проверю на другом компе
Автор: KurtWagner
Дата сообщения: 29.10.2008 13:35
как сделать след. чтоб при закрытии autorun.exe
закрывалась (закрывались) скажем Help.chm (если нужно MyProgram.exe)

Добавлено:
как сделать след. чтоб при закрытии autorun.exe
закрывалась (закрывались) скажем Help.chm (если нужно MyProgram.exe)
Автор: Zloy_Gelud
Дата сообщения: 29.10.2008 14:03
KurtWagner
Глобальные функции:

Код: function QueryAllowProjectClose()
    -- заголовок искомого окна
    local strWindowName = "AutoPlay Media Studio 7.0 Help";
    local tblTitles = Window.EnumerateTitles(true);
    if (tblTitles) then
        for nHandle, strTitle in tblTitles do
            nPos = String.Find(strTitle, strWindowName, 1, false);
            if (nPos ~= -1) then
                Window.Close(nHandle, CLOSEWND_SENDMESSAGE);
            end
        end
    end
end
Автор: tavria2
Дата сообщения: 29.10.2008 14:56
lorents

Цитата:
что-то я этого не заметил, сейчас проверю на другом компе

А что ты будешь проверять? Это относится к эмуляции клика мышкой в указанном месте, а в твоем коде нет никакой эмуляции, там только установка фокуса на вложенное окно в Web-объекте.
Автор: lorents
Дата сообщения: 29.10.2008 15:46
tavria2

Цитата:
это не красиво когда мышка делает перемещение без твоего участия.

у меня ничего не перемещается
Автор: tavria2
Дата сообщения: 29.10.2008 16:00
lorents
Внимательно читай предыдущий пост.
Автор: lorents
Дата сообщения: 29.10.2008 19:10
помогите, что-то я не догоняю где допустил ошибку
у меня проект может разворачиваться на весь экран монитора, окно проекта стандартное

на одной странице проекта есть кнопка перехода на другую страницу , если окно проекта развернуто то при нажатии на кнопку у меня в открывшемся окне проекта не изменяются нb место нахождение объектов ни размер

вот часть кода второй страницы (on Size)


Код: Window_Size = Page.GetSize();
Image.SetSize("Image1", 3, Window_Size.Height);
Image.SetSize("Image2", 264, Window_Size.Height - 117);
Image.SetPos("Image4", 3, Window_Size.Height - 3);
Image.SetSize("Image5", 3, Window_Size.Height);
Image.SetPos("Image6", 3, Window_Size.Height - 114);
Image.SetSize("Image7", 3, Window_Size.Height);
Автор: firstdock
Дата сообщения: 30.10.2008 03:17
здравствёуйте.
У меня проблема ни как не могу ркшить.
Дело в том, что при усовершенствовании кода и функциональности проекта, столкнулся с необъеснимым эффектом.
весь смысл проекта заключается в том чтобы просматривать фото с помощью слайдшоу.
Месяц тому назад я уже выкладывал код первой версии.
первая страница проека просто для приветствия и серьёзного кода не несёт, на второй странице в лист бокс автоматически загружается фотографии из папки
вот код

Код:
local strFilter = "Image Files|*.bmp;*.pcx;*.tga;*.wmf;*.png;*.jpg;*.tif;*.psd;*.gif|*.pcd|";
tblImages = File.Find("AutoPlay\\Images\\foto", strFilter, true, true, nil, nil);
if(tblImages)then
    if(tblImages[1] ~= "CANCEL")then
    
        -- Store last used folder for convenience
        local tblPath = String.SplitPath(tblImages[1]);
        local strLastPath = tblPath.Drive..tblPath.Folder;
        Application.SaveValue("SlideshowMakerTemplate", "LastOpenFolder",strLastPath);
    
        -- Add the selected file(s) to the slideshow    
        for i,strFilename in tblImages do
            AddImageToSlideShow(strFilename);
        end
        
    end
end
-- sPathDir
FillLB("sPathDir");
-- Update the preview image
UpdatePreview();
Автор: Zloy_Gelud
Дата сообщения: 31.10.2008 00:27
firstdock


Цитата:
при усовершенствовании кода и функциональности проекта

Отжег..
Помоему код больше захламлен, чем усовершенствован. Если все у тебя на автомате должно делаться, то половину кода можно отправлять в мусорку.
По сути: из-за кода выбора музыки такое не может случиться. 100% в чем-то другом... Уж проще самому проект полностью сделать, чем собирать по кускам из готовых, имхо, что ведет к таким проблемам.
Сорри, что ничем не помог..но представленного кода мало для анализа. Да и анализировать такую кучу тяжеловато, по крайне мере для меня.
Автор: lorents
Дата сообщения: 31.10.2008 10:08
кто-нибудь разобрался как сделать чтобы диалоговое окно не блокировало проект а только была поверх проекта?

как сделать чтобы при нажатии на кнопку у меня окно проекта из standard становилось Kiosk-color?
через что мне сделать?
Автор: Zloy_Gelud
Дата сообщения: 31.10.2008 19:44
lorents -- опять дубли плодишь =(. Все уже прочитали твой пост. Знали б - ответили.
Автор: lorents
Дата сообщения: 31.10.2008 22:05
Вопрос который точно я не задавал, а за повтор простите больше не буду
парни тут такая проблема!
хочу сделать такую вещь, чтобы пользователь мог сам выбирать какие pdf-файлы нужны и чтобы мог сохранить все выбранные в один файл?
как это осуществить?
Автор: firstdock
Дата сообщения: 31.10.2008 22:50
Zloy_Gelud

Согласен что кода много, так просто не разобраться.. могу выслать проект на мыло.

прошу прощение если мои слова воспримятся как попрошайничество.

поделитесь, если есть ams выше версии 7.1.
Автор: lorents
Дата сообщения: 31.10.2008 22:59
firstdock

Цитата:
поделитесь, если есть ams выше версии 7.1.

http://forum.ru-board.com/topic.cgi?forum=35&topic=0720&start=1320
Автор: Zloy_Gelud
Дата сообщения: 31.10.2008 23:22
firstdock --
Автор: lorents
Дата сообщения: 31.10.2008 23:51

Цитата:
Вопрос который точно я не задавал, а за повтор простите больше не буду
парни тут такая проблема!
хочу сделать такую вещь, чтобы пользователь мог сам выбирать какие pdf-файлы нужны и чтобы мог сохранить все выбранные в один файл?
как это осуществить?


я тут нашел такую улиту pdfspme_cmd.exe которая объединяет несколько pdf-файлов в один (как раз то что мне нужно)

вот немного нашел об этом

-MER:

-MER <<-I> <input1> [range]> […] [<-I> <input N> [range]] [<-O> <output >]

merge the file input1 input2 ... inputN to output file.

<-I> <input>
input file path, eg. c:\abc\input.pdf

<range>
indicate extract pages of ranges from a PDF file, e.g. 1,3,5-10 ,
please refer to merge parameters table above.

<-O> <output>
output the rusult file.


example:
pdfspme_cmd.exe -mer -i "c:\abc\input1.pdf" -i "c:\abc\input2.pdf" -o "c:\aaa\merge.pdf"
then result is:
c:\aaa\merge.pdf The file contain both input1.pdf and input2.pdf

pdfspme_cmd.exe -mer -i "c:\abc\input1.pdf" "1-100" -i "c:\abc\input2.pdf" "101-" -o "c:\aaa\merge.pdf"
then result is:
c:\aaa\merge.pdf The file contain 1-100 page of the file "input1.pdf" and 101-end page of the file "input2.pdf "

может кто подскажет как сделать моё задуманное через эту улиту
Автор: Zloy_Gelud
Дата сообщения: 01.11.2008 01:24
lorents

Попробуй такое (сам каюсь не тестил, но по идее должно работать):

Код: local tblFilePaths = Dialog.FileBrowse(true, "Открыть", _DesktopFolder, "PDF Files (*.pdf)|*.pdf|", "", "dat", true, false);
if (tblFilePaths ~= nil) and (tblFilePaths[1] ~= "CANCEL") then
    strArg = "";
    -- путь к файлу с уже объединенными .PDF
    strOutFile = String.SplitPath(tblFilePaths[1]).Drive..String.SplitPath(tblFilePaths[1]).Folder.."split.pdf";
    for n, strPathFile in tblFilePaths do
        -- добавляем выбранные файлы в строку принимаемых арг-ов
        strArg = strArg.." -i \""..strPathFile.."\"";
    end
    -- формируем окончательную строку аргументов
    strArg = "-mer "..strArg.." -o \""..strOutFile.."\"";
    -- тест строки арг-ов
    --Input.SetText("Input1", strArg);    
    File.Run("AutoPlay\\Docs\\pdfspme_cmd.exe", strArg, "", SW_MINIMIZE, false);
end
Автор: Zloy_Gelud
Дата сообщения: 01.11.2008 16:14
firstdock
Автор: lorents
Дата сообщения: 01.11.2008 16:50
Zloy_Gelud
спасибо, код работает, а можно тебя попросить сделать не много другой код
как бы pdf файлы уже находятся в проекте и надо сделать чтобы пользователь мог сам выбрать какие файлы ему нужны через объект CheckBox (на примере двух CheckBox)
если тебе конечно не очень трудно подскажи пожалуйста, весь день пробую и ничего не выходит
и еще один вопрос а как сделать чтобы созданный файл сохранялся во временную папку а то у меня созданный файл сохраняется там же где и pdfspme_cmd.exe

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Symantec Endpoint Protection - SEP


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