Adobe Javascript в действии мастера против кнопки формы

104
7

Я писал javascript для заполнения полей формы PDF. Сначала я написал код в "Мастере действий" в Adobe. В то время я не понимал, что добавляю его в свое местное приложение, а не в форму. Поэтому я затем скопировал его на кнопку на стороне, и теперь он не работает.

Код:

/* Test to read in a file and update the fields*/
var dataFrom = null;
//Grab the current path and update it to indicate the TempInfo location
var strPath = this.path;
strPath = strPath.slice(0,-12);
strPath = strPath + "TempInfo.txt"

//Get data from TempFile into array, display message if no file found
try{
var dataStream = util.readFileIntoStream(strPath);
var dataFrom = util.stringFromStream(dataStream);
}catch(e){
app.alert("Temp file not found");
}

//Put the data into an array and update the fields
var strTest = new Array();
strTest = dataFrom.split(/\n/);

getField("Username").value = strTest[0];
getField("UID").value = strTest[1];

//Clear the data
dataStream = null;
dataFrom = null;
strTest = null;

Я получаю app.alert "Temp файл не найден", поэтому "var dataStream = readFileInfoStream (strPath)"; не читается в файле. Я сделал app.alerts, чтобы проверить, что переменная strPath имеет правильный путь, и один, чтобы проверить, что dataStream имеет значение null. Будучи тем, что я скопировал его из Мастера действий, я не уверен, почему он не работает.

Просто, чтобы сделать это немного странным (по крайней мере, для меня), если я открою редактор JavaScript и выделим код, он отлично работает.

спросил(а) 2017-10-17T21:26:00+03:00 3 года, 4 месяца назад
1
Решение
61

Для метода util.readFileIntoStream, когда указан параметр cDIPath, метод может быть выполнен только в привилегированном контексте, что означает во время пакетного события консоли или Action. Он не будет работать при выполнении в контексте документа, если вы не создадите доверенную функцию.

Прочтите это, чтобы понять, как выполнять привилегированные методы в непривилегированном контексте... http://help.adobe.com/en_US/acrobat/acrobat_dc_sdk/2015/HTMLHelp/index.html#t=Acro12_MasterBook%2FJS_Dev_Contexts%2FExecuting_privileged_methods_in_a_non- privileged_context.htm & rhsearch = доверенный %20function & rhsyns = 20%

ответил(а) 2017-10-18T00:32:00+03:00 3 года, 4 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема