Янус Xml сохранить метод абстрактных встреч не удается VB.NET 2010

Я использую dll Janus Schedule (и другие ссылки Janus, такие как janus.common, janus.calendar.dll) для сохранения встреч в файле xml (я использую Janus Winforsv

control suite v 3.0).

Я успешно запустил приложение на моем компьютере, но при запуске программы на другом компьютере, программа вызывает ошибку при вызове SaveAppointments метод, ошибка приходит в Schedule1.SaveAppointments(поток)...

Метод таков:

Private Sub SaveAppointments()
        Dim stream As System.IO.Stream
        If (fileName Is Nothing) Then
            If (saveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK) Then
                fileName = saveFileDialog1.FileName
                stream = saveFileDialog1.OpenFile()
            Else
                Return
            End If
        Else
            stream = New System.IO.FileStream(fileName, System.IO.FileMode.Create)
            stream.Position = 0

             Schedule1.SaveAppointments(stream)  ''*******HERE IS THE ERROR      

           stream.Close()

            stream = Nothing

            appointmentsChanged = False
        End If
    End Sub

Я получаю ошибку:

 System.TypeLoadException: Abstract Method with non-zero RVA    
at  Janus.Windows.Common.Layouts.PropertyValue.a(XmlWriter , IJanusLayout 
at Janus.Windows.Common.Layouts.JanusLayoutWriter.a(XmlWriter ,  IJanusLayout )    
at Janus.Windows.Common.Layouts.JanusLayoutWriter.FillStream(Stream  stream)
at Janus.Windows.Schedule.Schedule.SaveAppointments(Stream  stream)   
at FOEA.MainForm.SaveAppointments()
at C:\FOE\UI\MainForm.vb:línea 78    
at FOEA.MainForm.MainMenu_Click(Object sender, EventArgs e) 
at C:\FOEA\UI\MainForm.vb:line 143    
at  System.Windows.Forms.MenuItem.OnClick(EventArgs e)    
at System.Windows.Forms.MenuItem.MenuItemData.Execute()    
at System.Windows.Forms.Command.Invoke()    
at System.Windows.Forms.Command.DispatchID(Int32 id)    
at System.Windows.Forms.Control.WmCommand(Message& m)    
at System.Windows.Forms.Control.WndProc(Message& m)    
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)    
at System.Windows.Forms.ContainerControl.WndProc(Message& m)    
at System.Windows.Forms.Form.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)

Во-первых, я подозревал, что целевой компьютер должен иметь.NET 3.5 для Xml.linq.dll, но я ссылался на dll, а затем назначил Copy local значение true и добавил все необходимые dll, все еще выбрасывая эту ошибку...

Другое предположение это имя System.Xml.dll это не то же самое, что DLL в моем каталоге bin (System.XML.dll) может верхний регистр заставляет vb.net не распознавать XML-dll?, но я не думаю, что это связано с ошибкой.

Я установил:

  • Профиль клиента Microsoft .NET 4 Framework
  • Microsoft .NET 4 Framework Extended
  • MSXML 4.0 SP2 Парсер и SDK
  • MSXML 4.0 SP3 Parser

на целевом ПК, но это не сработало... При получении этой ошибки содержимое файла xml удаляется, файл schedule.xml все еще там и пуст.

Я не знаю, что делать, потому что программа запускается на моем компьютере и на другом компьютере, который у меня есть, но не работает на целевом ПК... Как вы думаете, мне следует установить winforms Janus на целевой ПК? может быть, что работа woulc

1 ответ

Решение

Я использовал Янус некоторое время назад. Метод сохранения встреч, который я использовал:

 Private Sub SaveAppointments()
        Me.Cursor = Cursors.WaitCursor
        Dim appointmentsDir As String = "yourAppsFile.xml"
        Dim appointmentsStream As System.IO.FileStream
        appointmentsStream = New System.IO.FileStream(appointmentsDir, System.IO.FileMode.Create)
        Schedule1.SaveAppointments(appointmentsStream)
        appointmentsStream.Close()
        Me.Cursor = Cursors.Default
    End Sub

Также убедитесь, что файл XML имеет все корни и элементы (правильно сформированный XML)

В янус 3.5

<?xml version="1.0" encoding="utf-8"?>
<Schedule>
    <Fields Collection="true" ElementName="Field" />
    <Owners Collection="true" ElementName="Owner" />
    <Appointments Collection="true" ElementName="Appointment">
        <Appointment0>
            <Description>test </Description>
            <EndTime>10/10/2011 11:00:00</EndTime>
            <Text>test </Text>
            <StartTime>10/10/2011 10:30:00</StartTime>
        </Appointment0>           
    </Appointments>
</Schedule>
Другие вопросы по тегам