Показать полную графическую версию : AutoPlay Media Studio
помогите пожалуйста решить проблемы
1. нужно сделать проверку на наличие Adobe Reader (в частности проверка на версию) на компьютере
для начала был взят код lua с самой программы
C:\Program Files\AutoPlay Media Studio 7.0\Plugins\Detect, где файлы .DET представляют собой архивы с необходимыми мне LUA файлами. (открываются архивом работающий с zip), и вот код
Application.LoadScript("AutoPlay\\Scripts\\Acrobat.lua");
и
strAcrobatVer = ir_GetAcrobatVersion();
if (strAcrobatVer == "0.0.0.0") or (String.CompareFileVersions(strAcrobatVer, "7.0.0.0") == -1) then
Page.Jump("Page2");
end
но проблема в том что код работает почему-то только на проверку на наличие или отсутствие Adobe Reader а при проверки на версию винда выдает ошибку
2 как сделать чтобы при нажатии на кнопку у меня окно проекта из standard становилось Kiosk-color (и окно проекта нельзя было быперемещать)?
3 как запустить диалоговое окно печати в Web (а если через web открывать pdf-файл то и pdf-файл можно вызвать функцию печать)
задумка такая
ставим фокус на Web
потом проект должен нажать на кнопки Ctrl+P
и у нас запускается диалоговые окно печати
и так приступим
устанавливаем фокус
Page.SetFocus("Web1");
а вот дальше проблема я не знаю как сделать чтобы проект сам нажимал на эти две эти кнопки просто так
знаю код клавиш только
e_Modifiers.ctrl and e_Key == 50
винда выдает ошибку »Почему думаешь что Windows выдает ошибку? Скрипт берет данные из реестра и Windows может ругаться в случае, если у программы нет прав читать реестр??
Тем не менее я протестил скрипт Acrobat.lua и оказалось что он работает. По выполнении скрипта в переменной strAcrobatVer версия Акробата врлне корректно.
___oj, так у тебя работает?
я не ограничивал доступ к реестру, у меня в начале при запуске проекта стоит проверка на наличие и версию adobe reader и все корректно работает, и еще код работает только на проверку наличия программы на компьютере
и еще в самом начале я сделал только проверку на наличие adobe reader и все работало
if (not Registry.DoesKeyExist(HKEY_LOCAL_MACHINE, "Software\\Adobe\\Acrobat Reader")) then
Page.Jump("Page2");
end
так что на реестре нет ограничения доступа
mardoplias
29-12-2009, 13:51
Можно ли :
За архивировать файл SFX с паролем что бы запуская его с диска он просил пароль а если запускать из Autorun то пароль вводить не надо было бы ? Может там кокой то скрипт чтобы он при нажатии на кнопку запускал приложение и сам вводил пароль?
помогите пожалуйста решить проблему с AutoPlay Media Studio стандартный шаблон pdf document wiewer, раскрывает список дерево папка, файл,что нужно прописать или изменить чтоб раскрывалось папка,папка,файл или папка,папка,папка,файл.
-- PDF Root Folder Defined in Global Functions
-- Variable: sPDFRootFolder
sFirstPDFToLoad = "";
function AddToTree(sFullPath)
if (sFirstPDFToLoad == '') then
sFirstPDFToLoad = sFullPath;
end
-- Split the path
tPathParts = String.SplitPath(sFullPath);
-- Get length of root folder (so we know how many chars to skip)
nRootLength = String.Length(sPDFRootFolder);
-- sFullPath minus last character
sFullFolderPath = tPathParts.Drive .. tPathParts.Folder;
nFullFolderPathLength = String.Length(sFullFolderPath);
sFullFolderPath = String.Mid(sFullFolderPath, 1, nFullFolderPathLength - 1);
-- Check of PDF should be inserted into root of tree
if(String.Compare(sPDFRootFolder, sFullFolderPath) == 0) then
-- We're inserting this PDF into the root, configure node values
tNodeData = {};
tNodeData['Text']=tPathParts.Filename;
tNodeData['Data']=sFullPath;
tNodeData['ImageIndex']="0";
-- Insert the node
Tree.InsertNode("Tree1", Tree.GetChildCount("Tree1", "0") + 1, tNodeData);
else
-- We need to search for an existing node by 'folder' value (ie sub folder) ... so let's create the search string
-- Initialize
sSearchString = tPathParts.Folder;
-- Strip the last slash off
sSearchString = String.TrimRight(sSearchString, '\\');
-- Find the last occuring slash (will be before the final folder name
nPosLastSlash = String.ReverseFind(sSearchString, '\\');
-- Get rid of all the stuff before the last occuring slash
sSearchString = String.Mid(sSearchString, nPosLastSlash + 1, -1);
-- Search the tree by node name (folder name)
sFoundNodeIndex = Tree.FindNodeByText("Tree1", "0", sSearchString);
if sFoundNodeIndex == "" then
-- Node wasn't found, create it
-- Create node data (data part is left blank ... this is a 'category', not a document)
tNodeData = {};
tNodeData['Text']=sSearchString;
tNodeData['Data']="";
tNodeData['ImageIndex']="1";
sParentIndex = Tree.GetChildCount("Tree1", "0") + 1;
Tree.InsertNode("Tree1", sParentIndex, tNodeData);
else
sParentIndex = sFoundNodeIndex;
end
-- Insert actual file
tNodeData = {};
tNodeData['Text']=tPathParts.Filename;
tNodeData['Data']=sFullPath;
tNodeData['ImageIndex']="0";
Tree.InsertNode("Tree1", sParentIndex .. "." .. (Tree.GetChildCount("Tree1", sParentIndex) + 1), tNodeData);
end
return true;
end
-- Find all PDF's in the folder
File.Find(sPDFRootFolder, "*.pdf", true, false, nil, AddToTree);
-- Load the first PDF
PDF.LoadFile("PDF1", sFirstPDFToLoad);
rawowa, Ваш вопрос непонятен.
Вот первое фото, это то что у нас есть.
а на втором надо добавить.
-- PDF Root Folder Defined in Global Functions
-- Variable: sPDFRootFolder
sFirstPDFToLoad = "";
function AddToTree(sFullPath)
if (sFirstPDFToLoad == '') then
sFirstPDFToLoad = sFullPath;
end
-- Split the path
tPathParts = String.SplitPath(sFullPath);
-- Get length of root folder (so we know how many chars to skip)
nRootLength = String.Length(sPDFRootFolder);
-- sFullPath minus last character
sFullFolderPath = tPathParts.Drive .. tPathParts.Folder;
nFullFolderPathLength = String.Length(sFullFolderPath);
sFullFolderPath = String.Mid(sFullFolderPath, 1, nFullFolderPathLength - 1);
-- Check of PDF should be inserted into root of tree
if(String.Compare(sPDFRootFolder, sFullFolderPath) == 0) then
-- We're inserting this PDF into the root, configure node values
tNodeData = {};
tNodeData['Text']=tPathParts.Filename;
tNodeData['Data']=sFullPath;
tNodeData['ImageIndex']="0";
-- Insert the node
Tree.InsertNode("Tree1", Tree.GetChildCount("Tree1", "0") + 1, tNodeData);
else
-- We need to search for an existing node by 'folder' value (ie sub folder) ... so let's create the search string
-- Initialize
sSearchString = tPathParts.Folder;
-- Strip the last slash off
sSearchString = String.TrimRight(sSearchString, '\\');
-- Find the last occuring slash (will be before the final folder name
nPosLastSlash = String.ReverseFind(sSearchString, '\\');
-- Get rid of all the stuff before the last occuring slash
sSearchString = String.Mid(sSearchString, nPosLastSlash + 1, -1);
-- Search the tree by node name (folder name)
sFoundNodeIndex = Tree.FindNodeByText("Tree1", "0", sSearchString);
if sFoundNodeIndex == "" then
-- Node wasn't found, create it
-- Create node data (data part is left blank ... this is a 'category', not a document)
tNodeData = {};
tNodeData['Text']=sSearchString;
tNodeData['Data']="";
tNodeData['ImageIndex']="1";
sParentIndex = Tree.GetChildCount("Tree1", "0") + 1;
Tree.InsertNode("Tree1", sParentIndex, tNodeData);
else
sParentIndex = sFoundNodeIndex;
end
-- Insert actual file
tNodeData = {};
tNodeData['Text']=tPathParts.Filename;
tNodeData['Data']=sFullPath;
tNodeData['ImageIndex']="0";
Tree.InsertNode("Tree1", sParentIndex .. "." .. (Tree.GetChildCount("Tree1", sParentIndex) + 1), tNodeData);
end
return true;
end
-- Find all PDF's in the folder
File.Find(sPDFRootFolder, "*.pdf", true, false, nil, AddToTree);
-- Load the first PDF
PDF.LoadFile("PDF1", sFirstPDFToLoad);
Никак, коллега. Вы можете «подклеить» ветвь к корню или к другой ветви, но не к листу ветви.
Опишите подробно, что Вы хотите получить в глобальном плане (повторять «что нужно прописать или изменить чтоб раскрывалось папка,папка,файл или папка,папка,папка,файл» не стоит).
Очень сильно хочу извинится за не правильные вопросы и неправильное фото.
Скорей всего «подклеить»к другой ветви если я не ошибаюсь то это фото теперь правильное.
Опишите подробно, что Вы хотите получить в глобальном плане »
подклеить еще ветвь к каждой другой ветви!
Снова здравствуйте!
Суть этого авторана такова, закидаеш папку с pdf файлами в корневую папку диска, и при запуске авторана о сканирует корневую папку на наличие папок и файлов, и вставляет их в дерево,проблема в том что дерево раскрывается так : ветвь,лист, а надо з делать так : ветвь,ветвь,лист, а именно «подклеить» ветвь к каждой другой ветви,а на фото в верху это получается так; категория,
категория,документ а не категория,документ.и чтоб в каждой категории бил документ.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.