Не работает шаблон, если в него добавить свой код на C#

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
У клиента (одного из десятка с таким же шаблоном) шаблон завершается с ошибкой:
Код:
"Компиляция кода System.IO.FileNotFoundException: Не удается найти указанный файл. (Exception from HRESULT: 0x80070002)
   at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
   at ZennoLab.AssemblyCompiler.Forms.AssembliesFormGAC.AssemblyCache.QueryAssemblyInfo(String assemblyName)
   at ZennoLab.ZennoPoster.Modules.TemplateExecutor.ExecutorOfSteps.Ui60iylPikwjC8qEjikj(Object )
   at ZennoLab.ZennoPoster.Modules.TemplateExecutor.ExecutorOfSteps.CompileCode(UnitOfWork task, Boolean& errorCompile)"

Клиент запускает шаблон в ZP. Вот такой тестовый шаблон уже не работает: https://yadi.sk/d/Qtbel1NociDv4
 

KirillOFF

Client
Регистрация
18.12.2010
Сообщения
1 127
Благодарностей
517
Баллы
113
Не хватает .Net Framework 3.5
 
  • Спасибо
Реакции: Advice

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
Я смотрел в "Установка и удаление программ" (система - ХР), там фреймворки аж от 2-го и до 4-го установлены. Тот же самый код на компьютере клиента в CodeCreator-е компилируется без ошибок, как такое может быть?
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Ну такой тестовый шаблон и не должен данную ошибку выводить, верно?
Какая ошибка от него?
 

LexxWork

Client
Регистрация
31.10.2013
Сообщения
1 190
Благодарностей
786
Баллы
113
я думаю там проблема с подключением microsoft.interop.excel
какая версия либ? На других хрюшках работает? Если да, то какие там версии?
 

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
Ну такой тестовый шаблон и не должен данную ошибку выводить, верно?
Какая ошибка от него?
В том то и дело, что такой простейший шаблон должен отрабатывать без ошибок. В первом посте я привел текст ошибки.
 

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
я думаю там проблема с подключением microsoft.interop.excel
какая версия либ? На других хрюшках работает? Если да, то какие там версии?
Microsoft.Office.Interop.Excel.dll 15.0.0.0 C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Excel\15.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll

Насчет других XP (и есть ли они вообще) - не знаю, это первый клиент с такой проблемой. Попробую у себя на виртуальной машине в ХР запустить, позже сообщу о результатах.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Приложите результат Diagnostic.exe с проблемной машины
 

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
Итак, на виртуальной машине с ХР ошибка следующая:
Код:
Тип    Время    Сообщение
    21:23:36    "Компиляция кода System.IO.FileNotFoundException: Не удается найти указанный файл. (Exception from HRESULT: 0x80070002)
   at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
   at ZennoLab.AssemblyCompiler.Forms.AssembliesFormGAC.AssemblyCache.QueryAssemblyInfo(String assemblyName)
   at ZennoLab.ZennoPoster.Modules.TemplateExecutor.ExecutorOfSteps.kdbJvQ9jdwL7bS7fPWlZ(Object )
   at ZennoLab.ZennoPoster.Modules.TemplateExecutor.ExecutorOfSteps.CompileCode(UnitOfWork task, Boolean& errorCompile)"
Идентичная?

Результаты Diagnostic.exe смогу предоставить похоже только через сутки, у клиента очень отличается часовой пояс.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
А XP с каким сервис паком?
 

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
На моей виртуальной машине - XP Professional версия 2002 Service Pack 3
 

LexxWork

Client
Регистрация
31.10.2013
Сообщения
1 190
Благодарностей
786
Баллы
113
Microsoft.Office.Interop.Excel.dll 15.0.0.0
ну так все понятно
на хрюхе эти либы не будут работать. Поставьте версию ниже 12
 
  • Спасибо
Реакции: brunen9

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
Значит с этой длл я привязан к определенной версии офиса (2013), которую на ХР установить нельзя, отсюда и проблемы.

Собственно возня с екселем началась после того, как обнаружилась невозможность привязать таблицу в CodeCreator-е к файлу. В последнем релизе биндинги для списков починили, а вот для таблиц - нет. С нетерпением жду исправляющего релиза, пока очень неудобно работать.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Значит с этой длл я привязан к определенной версии офиса (2013), которую на ХР установить нельзя, отсюда и проблемы.

Собственно возня с екселем началась после того, как обнаружилась невозможность привязать таблицу в CodeCreator-е к файлу. В последнем релизе биндинги для списков починили, а вот для таблиц - нет. С нетерпением жду исправляющего релиза, пока очень неудобно работать.
Да ладно?(
А вы писали в баги?
Вообще не помню что кто то писал что в 5,5 не работает привязка в коде.
Проверю.
 

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
Хотите сказать, что таки исправили в 5.5? Вот тут https://wiki.zennolab.com/doku.php?id=ru:changelog сказано только о биндинге списков. Я даже не стал обновляться, памятуя предыдущий релиз, содержащий количество багов, достаточное, чтобы пользователи откатывались на старую версию.
 

brunen9

Client
Регистрация
20.07.2014
Сообщения
50
Благодарностей
1
Баллы
8
Нет, в 5.5 Bind() для таблиц всё ещё не работает, только что проверил.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Проверим, спасибо.
 

Radugniy

Client
Регистрация
10.10.2013
Сообщения
50
Благодарностей
7
Баллы
8
вчера вставил код в 5.4.3.0 демку, и проект помер. догло не мог понять в чем дело, перезагружал комп, переустанавливал зенку. Самое что смешное - ни один проект вообще не хотел работать, даже без этого кода.
Код:
// берем из переменной текст, который надо искать
var textContains = project.Variables["Proverka_nali4iya_zadaniy"].Value;
// ищем в каждой строчке в списке
lock(SyncObjects.ListSyncer)
{
    for(int i=0; i < sourceList.Count; i++)
    {
        // читаем строку из списка
        var str = sourceList[i];
        // проверяем содержание текста в строке, если есть совпадение возвращаем "yes"
        if (str.Contains(textContains))
            return "yes";
    }
}
// если ничего не нашли возвращаем "no"
return "no";
Я не знаю в чем прикол, но код даже не был прикручен ни к чему, просто кубик лежал в пустом углу страницы. Я уж начал думать что демку заблочили)))
Как только удалил - все заработало!
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
ошибку в логе смотрите. Значит код не компилился наверное
 

Gor

Client
Регистрация
30.09.2016
Сообщения
248
Благодарностей
30
Баллы
28
Приветствую! У меня такая же ошибка (( Подскажите что делать, а? http://prntscr.com/opajr8
У меня шаб запускается, все хорошо, у товарища не запускается вообще. Этот же шаблон устанавливал другому товарищу, оказалось, что не хватает библиотеки определенной в Windows. Скопировал у себя, запустилось.В этом случае эта библиотека уже есть. А какой нет предположительно не знаю совсем (
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
А какой нет предположительно не знаю
по логам не ясно, какой именно файл не найден, попробуйте сделать диагностику и на всякий случай обновить net framework
 

Gor

Client
Регистрация
30.09.2016
Сообщения
248
Благодарностей
30
Баллы
28
по логам не ясно, какой именно файл не найден
да что Вы говорите? :-))) А я уж было подумал, что там прямо написано, нет файла такого-то по пути такому-то, добавь и будет тебе счастье :-))
.Net Framework стоит последний, на всякий случай скачал и установил все обновления системы, которые как-то связаны с .NET
Диагностику выполнил, отчет прикладываю.
Буду очень признателен если поможете.
 

Вложения

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
я уж было подумал, что там прямо написано, нет файла
там написано, я не внимательно посмотрел, на скрине указано, что нужен office interop, еще точнее
нужна и её правильная версия + установленный офис
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)