Загрузка Engine из Embedded Streams
Добавлено: 26 янв 2009, 13:00
Приветствую.
Проблема такая, чтобы с приложением не шла куча соблазнительных Dll, я переделал приложение таким образом, чтобы движок стимула у грузился из ресурсов самого приложения. Но при этом получается, что движок стал неработоспособен при вызове дизайнера, равно как и отчёта. Ошибки такие:
При вызове отчёта:
А соответственно при вызове дизайнера:
Если рядом с приложением положить все Dll стимула, то отчёт получить становится возможным, а открыть дизайнер нельзя с диагнозом:
Как я понимаю - это происходит ввиду того, что где-то внутри движка идёт непосредственная загрузка сборок из файлов, но все сборки стимула я гружу вручную из ресурсов. Можно как-то обойти эту проблему?
С уважением, Олег Калинин
Проблема такая, чтобы с приложением не шла куча соблазнительных Dll, я переделал приложение таким образом, чтобы движок стимула у грузился из ресурсов самого приложения. Но при этом получается, что движок стал неработоспособен при вызове дизайнера, равно как и отчёта. Ошибки такие:
При вызове отчёта:
Код: Выделить всё
Exception:
Невозможно преобразовать объект типа "Stimulsoft.Report.Components.StiMargins" к типу "Stimulsoft.Report.Components.StiMargins".
Stack Trace:
в System.RuntimeType.CheckValue(Object value, Binder binder, CultureInfo culture, BindingFlags invokeAttr)
в System.Reflection.MethodBase.CheckArguments(Object[] parameters, Binder binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
в System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, Object[] index, CultureInfo culture)
в System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, Object[] index)
в Stimulsoft.Base.Serializing.StiSerializing.SetProperty(PropertyInfo p, Object obj, Object value)
в Stimulsoft.Base.Serializing.StiSerializing.DeserializeObject(Object obj, StiPropertyInfoCollection props)
в Stimulsoft.Base.Serializing.StiSerializing.DeserializeObject(Object obj, StiPropertyInfoCollection props)
в Stimulsoft.Base.Serializing.StiSerializing.DeserializeObject(Object obj, StiPropertyInfoCollection props)
в Stimulsoft.Base.Serializing.StiSerializing.DeserializeObject(Object obj, StiPropertyInfoCollection props)
в Stimulsoft.Base.Serializing.StiSerializing.Deserialize(Object obj, Stream stream, String application)
в Stimulsoft.Report.SaveLoad.StiXmlReportSLService.Load(StiReport report, Stream stream)
в Stimulsoft.Report.StiReport.Load(StiReportSLService service, Stream stream)
в Stimulsoft.Report.StiReport.Load(Stream stream)
в Stimulsoft.Report.StiReport.Load(String path)
в StimulReporting.StimulReporting.Make(Entity r, DataSet DataSet, String TemplateFile) в D:\!Projects\Sln\r_StimulReporting\StimulReporting.cs:строка 45
Код: Выделить всё
Exception:
Конструктор для типа "Stimulsoft.Report.Design.StiDesigner" не найден.
Stack Trace:
в System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
в System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
в System.Activator.CreateInstance(Type type, Object[] args)
в Stimulsoft.Base.StiActivator.CreateObject(String typeName, Object[] arguments)
в Stimulsoft.Base.StiActivator.CreateObject(Type type, Object[] arguments)
в Stimulsoft.Report.StiReport.PrepareForDesign()
в Stimulsoft.Report.StiReport.StartDesigner(StiReport report, Form parentForm, Boolean dialogForm)
в Stimulsoft.Report.StiReport.Design(Form parentForm, Boolean dialogForm)
в Stimulsoft.Report.StiReport.Design(Boolean dialogForm)
в StimulReporting.StimulReporting.RunDesigner(Entity r, DataSet DataSet) в D:\!Projects\Sln\r_StimulReporting\StimulReporting.cs:строка 62
Код: Выделить всё
Exception:
В экземпляре объекта не задана ссылка на объект.
Stack Trace:
в Stimulsoft.Report.Design.StiDesignerControl.OnRefreshStatusBar(Object sender, EventArgs e)
в Stimulsoft.Report.Design.StiDesignerControl.OnRefreshStatusBar(EventArgs e)
в Stimulsoft.Report.Design.StiDesignerControl.InvokeRefreshStatusBar()
в Stimulsoft.Report.Design.StiDesignerControl.Localize()
в Stimulsoft.Report.Design.StiBuilder.BuildReport()
в Stimulsoft.Report.Design.StiDesignerControl.OnLoad(EventArgs e)
в System.Windows.Forms.UserControl.OnCreateControl()
в System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
в System.Windows.Forms.Control.CreateControl()
в System.Windows.Forms.Control.OnVisibleChanged(EventArgs e)
в System.Windows.Forms.ScrollableControl.OnVisibleChanged(EventArgs e)
в System.Windows.Forms.Control.OnParentVisibleChanged(EventArgs e)
в System.Windows.Forms.Control.OnVisibleChanged(EventArgs e)
в System.Windows.Forms.ScrollableControl.OnVisibleChanged(EventArgs e)
в System.Windows.Forms.Form.OnVisibleChanged(EventArgs e)
в System.Windows.Forms.Control.SetVisibleCore(Boolean value)
в System.Windows.Forms.Form.SetVisibleCore(Boolean value)
в System.Windows.Forms.Control.set_Visible(Boolean value)
в System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
в System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
в System.Windows.Forms.Application.RunDialog(Form form)
в System.Windows.Forms.Form.ShowDialog(IWin32Window owner)
в System.Windows.Forms.Form.ShowDialog()
в Stimulsoft.Report.Design.StiDesigner.Stimulsoft.Report.Design.IStiDesigner.ShowDialog()
в Stimulsoft.Report.StiReport.StartDesigner(StiReport report, Form parentForm, Boolean dialogForm)
в Stimulsoft.Report.StiReport.Design(Form parentForm, Boolean dialogForm)
в Stimulsoft.Report.StiReport.Design(Boolean dialogForm)
в StimulReporting.StimulReporting.RunDesigner(Entity r, DataSet DataSet) в D:\!Projects\Sln\r_StimulReporting\StimulReporting.cs:строка 62
С уважением, Олег Калинин