Запуск из PowerShell

Обсуждение Stimulsoft Reports.NET
Ответить
cococo
Сообщения: 6
Зарегистрирован: 08 окт 2010, 12:35

Запуск из PowerShell

Сообщение cococo »

Добрый день.

Хотел запустить дизайнер из PowerShell. Не получается.

скрипт:
$ErrorActionPreference = "Stop"

[System.Reflection.Assembly]::Load( 'Stimulsoft.Base, Version=2010.2.800.0, Culture=neutral, PublicKeyToken=ebe6666cba19647a, processorArchitecture=MSIL' )
[System.Reflection.Assembly]::Load( 'Stimulsoft.Report, Version=2010.2.800.0, Culture=neutral, PublicKeyToken=ebe6666cba19647a, processorArchitecture=MSIL' )

# Отчет
[Stimulsoft.Report.StiReport] $report = new-object Stimulsoft.Report.StiReport

# Дизайнер
$report.Design( $true )

сообщение об ошибке:
DragDrop registration did not succeed

система WinXP + SP3, PowerShell 1.0
Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Запуск из PowerShell

Сообщение Aleksey »

Здравствуйте,

Несколько недель назад нами были произведены некоторые доработки по данной ошибке.
Пожалуйста проверьте последний пререлиз билд, которые доступен на нашем сайте.

Спасибо.
cococo
Сообщения: 6
Зарегистрирован: 08 окт 2010, 12:35

Запуск из PowerShell

Сообщение cococo »

Добрый день

Я скачал 2010.3.803.0.
Результат не изменился.

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.InvalidOperationException: DragDrop registration did not succeed. ---> System.Threading.ThreadStateException: Current thread must be set to single thread apartment (STA) mode before OLE calls can be made. Ensure that your Main function has STAThreadAttribute marked on it.
at System.Windows.Forms.Control.SetAcceptDrops(Boolean accept)
--- End of inner exception stack trace ---
at System.Windows.Forms.Control.SetAcceptDrops(Boolean accept)
at System.Windows.Forms.Control.OnHandleCreated(EventArgs e)
at System.Windows.Forms.Control.WmCreate(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at Stimulsoft.Editor.SyntaxEdit.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Microsoft.PowerShell.ConsoleHost
Assembly Version: 1.0.0.0
Win32 Version: 6.0.5430.0
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.PowerShell.ConsoleHost/1.0.0.0__31bf3856ad364e35/Microsoft.PowerShell.ConsoleHost.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Management.Automation
Assembly Version: 1.0.0.0
Win32 Version: 6.0.5430.0
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Management.Automation/1.0.0.0__31bf3856ad364e35/System.Management.Automation.dll
----------------------------------------
System.Configuration.Install
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration.Install/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.Install.dll
----------------------------------------
Microsoft.PowerShell.Commands.Management
Assembly Version: 1.0.0.0
Win32 Version: 6.0.5430.0
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.PowerShell.Commands.Management/1.0.0.0__31bf3856ad364e35/Microsoft.PowerShell.Commands.Management.dll
----------------------------------------
Microsoft.PowerShell.Security
Assembly Version: 1.0.0.0
Win32 Version: 6.0.5430.0
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.PowerShell.Security/1.0.0.0__31bf3856ad364e35/Microsoft.PowerShell.Security.dll
----------------------------------------
Microsoft.PowerShell.Commands.Utility
Assembly Version: 1.0.0.0
Win32 Version: 6.0.5430.0
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.PowerShell.Commands.Utility/1.0.0.0__31bf3856ad364e35/Microsoft.PowerShell.Commands.Utility.dll
----------------------------------------
System.Management
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Management/2.0.0.0__b03f5f7f11d50a3a/System.Management.dll
----------------------------------------
System.DirectoryServices
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.DirectoryServices/2.0.0.0__b03f5f7f11d50a3a/System.DirectoryServices.dll
----------------------------------------
System.Data
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Stimulsoft.Base
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Base.dll
----------------------------------------
Stimulsoft.Report
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Report.dll
----------------------------------------
Stimulsoft.Report.Design
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Report.Design.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Stimulsoft.Controls.Win
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Controls.Win.DLL
----------------------------------------
Accessibility
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Stimulsoft.Report.Helper
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Report.Helper.DLL
----------------------------------------
Stimulsoft.Report.Win
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Report.Win.DLL
----------------------------------------
Stimulsoft.Editor
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Editor.DLL
----------------------------------------
Stimulsoft.Controls
Assembly Version: 2010.3.803.0
Win32 Version: 2010.3.803.0
CodeBase: file:///[здесь мой каталог]/Report/Stimulsoft.Controls.DLL
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:





When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Запуск из PowerShell

Сообщение Aleksey »

Здравствуйте,

Данная ошибка возникает, скорее всего, из-за того что вы пытаетесь создать новое WinForms в другом потоке, отличном от основного потока, что и приводит к различным ошибках и данная ошибка это первая из них. WinForms не поддерживает MTA поскольку активно использует OLE объекты, в частности DragDrop.
Сложно сказать в чем может быть конкретно проблема, не видя самого кода. Возможно, вам необходимо пометить ваше приложение как STA, возможно, где-то что-то изменить в организации потоков.

Спасибо.
cococo
Сообщения: 6
Зарегистрирован: 08 окт 2010, 12:35

Запуск из PowerShell

Сообщение cococo »

Добрый день

А запустить из PowerShell очень нужно.
Это bat файл для запуска PowerShell:

@setlocal

@SET PATH=%CD%;%PATH%
@powershell.exe stimul.ps1

@pause

Это собственно stimul.ps1:

$ErrorActionPreference = "Stop"
[System.Reflection.Assembly]::LoadFrom( 'Stimulsoft.Base.dll' )
[System.Reflection.Assembly]::LoadFrom( 'Stimulsoft.Report.dll' )
[System.Reflection.Assembly]::LoadFrom( 'Stimulsoft.Report.Design.dll' )
# Отчет
[Stimulsoft.Report.StiReport] $report = new-object Stimulsoft.Report.StiReport
# Дизайнер
$report.Design( $true )


Теперь Вы видите весь код.
Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Запуск из PowerShell

Сообщение Aleksey »

Здравствуйте,

Разбираемся с проблемой.
Мы вам сообщим о результатах в данном топике.

Спасибо.
Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Запуск из PowerShell

Сообщение Aleksey »

Здравствуйте,

Мы добавили опцию, отключающую DragDrop, это не совсем правильно, но это должно помочь.
Попробуйте добавить следующий код:

Код: Выделить всё

Stimulsoft.Report.StiOptions.Designer.AllowUseDragDrop = false
Данная опция будет доступна в следующем предрелизном билде на следующей неделе.
Пожалуйста сообщите нам о результатах.

Спасибо.
Ответить