Page Index Toggle Pages: 1 Send TopicPrint
Hot Topic (More than 10 Replies) Problem: Events von Interop.Phoner in VB.Net (Read 9075 times)
Andy
Guest


Problem: Events von Interop.Phoner in VB.Net
29. Dec 2004 at 17:58
Print Post  
Hi Leute,

ich bastel grad mit VB.Net und Phoner und hab da ein Problem: Wenn ich mehr als ein Event der Klasse CPhoner überwache, bekomme ich immer einen Ausnahmefehler. Zum Beispiel:

Public Class Form1
    Inherits System.Windows.Forms.Form
    Public WithEvents myPhoner As Phoner.CPhoner
    Public iCallID As Integer
    Public Status As Phoner.TCallState
    Public Direction As Phoner.TDirection
    Public CallerID As String
    Public CalledID As String


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

       Try
           myPhoner = New Phoner.CPhoner
           AddHandler myPhoner.OnChangeState, AddressOf myPhoner_OnChangeState
           AddHandler myPhoner.OnDTMF, AddressOf myPhoner_OnDTMF
           AddHandler myPhoner.OnFilePlayed, AddressOf myPhoner_OnFilePlayed
           myPhoner.MakeCall(03012345)
           myPhoner.GetCallInfo(iCallID, Status, Direction, CallerID, CalledID)

       Catch ex As Exception
           MessageBox.Show(ex.Message)
       End Try

    End Sub


    Private Sub myPhoner_OnChangeState(ByVal CallID As Integer)
       MachIrgendwas()
    End Sub

    Private Sub myPhoner_OnDTMF(ByVal CallID As Integer, ByVal digit As Byte)
       myPhoner.DisconnectCall(iCallID)
    End Sub

    Private Sub myPhoner_OnFilePlayed()
       myPhoner.DisconnectCall(iCallID)
    End Sub

Überwache ich so nur 1 Event = Kein Problem. Bei mehr als einem gibt es die Exception "Ausnahme von HRESULT: 0x80040202". Liegts an meinen VB-Kenntnissen oder stimmt irgnd was in der Assembly Interop.Phoner nicht?

Vielleicht hat ja einer von Euch schon Erfahrungen mit Phoner&VB.Net gesammelt und kann mir helfen. Danke und Ciao
Andy
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11432
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #1 - 29. Dec 2004 at 20:50
Print Post  
Leider kenne ich mit mit VB und erst Recht nicht mit .Net aus. Hoffentlich liest hier ein entsprechnder Fachmann mit.
  
Back to top
WWW  
IP Logged
 
Andy
Guest


Re: Problem: Events von Interop.Phoner in VB.Net
Reply #2 - 29. Dec 2004 at 21:01
Print Post  
Hi und Danke schon mal.

ich habe ein bisschen gesucht und vielleicht das Problem eingrenzen können. Ich will einfach mal ein Paar Keywords posten:

Das Problem scheint der Com Zugriff auf die Dll zu sein, der nicht richtig gemanaged wird. In der für .net umgesetzten .dll ist der Zugriff auf die Klasse _Sinkhelper falsch (dh private) gesetzt und dies lässt sich (bei anderen Fällen) durch die Umsetzung der .dll in .il und die entsprechende Bearbeitung des IL-Codes (_sinkhelper public) bereinigen. In der Theorie - für mich zu hoch, ich habs probiert und klappt immer noch nicht...

Falls doch ein Fachmann mitliest, hier hab ich etwas gefunden: 

http://support.microsoft.com/default.aspx?scid=kb;en-us;Q309336
http://groups.google.de/groups?q=0x80040202+%22vb.net%22&hl=de&lr=&client=firefo...


Kurz:
Ursache liegt bei .Net - phoner ist klasse  Wink


Vielleicht würde ja auch die komplette Übersetzung von Phoner in .Net-Code helfen Roll Eyes

Gruß
Andy
  
Back to top
 
IP Logged
 
Marcel_
YaBB Newbies
*
Offline


Phoner is great!

Posts: 6
Joined: 02. Nov 2009
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #3 - 14. Jan 2010 at 16:36
Print Post  
Gibt es zu dieser Problematik schon eine Lösung?

Ich habe mir mal den IL-Code der Phoner.dll angesehen:

Code
Select All
.class public auto ansi sealed Phoner.ICPhonerEvents_SinkHelper
       extends [mscorlib]System.Object
       implements Phoner.ICPhonerEvents 



Das steht aber alles auf Public. 


Hat jemand einen funtionstüchtigen Quellcode für vb.net?


Gruß

Marcel
« Last Edit: 15. Jan 2010 at 13:20 by Marcel_ »  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11432
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #4 - 15. Jan 2010 at 13:28
Print Post  
Kann man in .Net nicht einfach automatisch eine Wrapper-Klasse um ein COM-Objekt erzeugen lassen?
  
Back to top
WWW  
IP Logged
 
jumper
YaBB Newbies
*
Offline


Phoner is great!

Posts: 3
Joined: 16. Feb 2010
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #5 - 17. Feb 2010 at 19:41
Print Post  
Hallo,
ich habe die gleiche Problematik mit C-Sharp – ist ja auch nur .Net.
Immer wenn ich mehr als ein Eventhandler anlege bekomme ich  die Exception "Ausnahme von HRESULT: 0x80040202".
Ein änliches Problem wurde in einem anderen Forum dem Delphi zugesprochen, wenn man die Events in Delphi mit dem Designer erstellt hat.

#####
Es liegt am Initialize des COMObjektes in Delphi. Der standardmässig generierte Rumpf
Code:
1:FConnectionPoint := FConnectionPoints.CreateConnectionPoint(
2:AutoFactory.EventIID, ckSingle, EventConnect)

muss gegen
Code:
1:FConnectionPoint := 
FConnectionPoints.CreateConnectionPoint(
2:AutoFactory.EventIID, ckMulti, EventConnect)

ausgetauscht werden. D.h. es muss TConnectionKind nicht als 'ckSingle' sondern als 'ckMulti' angegeben werden.
#####

Da ich keine Ahnung von Delphi habe kann ich auf die Richtigkeit nur hoffen. Die saubere Verwendung der Events von Phoner unter .Net wäre für mich sehr hilfreich.

Danke
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11432
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #6 - 18. Feb 2010 at 12:38
Print Post  
Ich habe eine neue Beta-Version hoch geladen, bei welcher ich nun "ckMulti" verwende. Sag bitte Bescheid, ob es nun besser geht.
  
Back to top
WWW  
IP Logged
 
jumper
YaBB Newbies
*
Offline


Phoner is great!

Posts: 3
Joined: 16. Feb 2010
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #7 - 18. Feb 2010 at 22:00
Print Post  
Hallo,
habe nach einen kurzen Test keine Exception mehr, bekomme aber immer nur Ereignisse vom zuletzt eingetragenen EventHandler gemeldet – die Reihenfolge ist scheinbar egal.

Werde mit der Beta noch ein wenig testen, bis hierhin schon mal besten Dank.
  
Back to top
 
IP Logged
 
jumper
YaBB Newbies
*
Offline


Phoner is great!

Posts: 3
Joined: 16. Feb 2010
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #8 - 18. Feb 2010 at 22:35
Print Post  
Hallo,
keine Probleme mehr mit Reihenfolge der Events kleiner Fehler auf meiner Seite.

Scheint alles bestens zu laufen. Vielleicht sollte man die Beispiele im Download zu CSharp bzw. VB.Net für aktuellere .Net Frameworks überarbeiten – mal sehen.

Danke
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11432
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #9 - 19. Feb 2010 at 07:48
Print Post  
Freut mich zu hören. Vielen Dank für den Hinweis.

Wenn du aktuellere Beispiel-Applikationen zur Verfügung stellen möchtest - nur her damit.
  
Back to top
WWW  
IP Logged
 
DabZ
YaBB Newbies
*
Offline


Phoner is great!

Posts: 1
Joined: 09. Apr 2010
Re: Problem: Events von Interop.Phoner in VB.Net
Reply #10 - 09. Apr 2010 at 17:47
Print Post  
Falls jumper noch mitliest: was genau war denn Dein "kleiner Fehler"? Ich habe gerade nämlich exakt dasselbe Problem: beim Zugriff auf eine Delphi-COM-DLL aus C# heraus kriege ich nach der Umstellung auf 'ckMulti' zwar alle Events verknüft, aber nur beim zuletzt verbundenen Event kommt in meiner C#-Anwendung auch was an Sad

Sorry für OffTopic...
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint