Diskuze: Součást ActiveX nelze vytvořit

C# .NET .NET (C# a Visual Basic) Součást ActiveX nelze vytvořit American English version English version

Avatar
H*falk*W
Člen
Avatar
H*falk*W:

Ahoj, mám tu takový malý problém :-) V práci v době klidu jsem si na Windows Virtual PC doinstaloval XP (používáme 7-ičky) a tam jsem si hodil Visual Basic 2008 Express :-)
Doinstaloval jsem si SAP klienta a zkouším se přes jednoduchý kód přihlásit do SAP s níže uvedeným kódem...

Když jej spustím v tomto virtuálním PC, do systému se připojím. Jakmile jej ale vydám a spustím na nevirtualizovaném PC (kde je Win 7, jiný OS nemáme), tak mi to hodí chybu.

Virtuální i nevirtuální PC mají stejného klienta. V nevirtuálním PC stejný kód funguje ve VBA v Excelu

Nevíte co s tím? :)

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim R3 As Object
        R3 = CreateObject("SAP.Functions")

        R3.Connection.System = "Q01"
        R3.Connection.client = "200"
        R3.Connection.user = "POCTA"
        R3.Connection.Password = ""
        R3.Connection.Language = "CS"

        If R3.Connection.Logon(0, False) <> True Then
            MsgBox("Nepodarilo se prihlasit")
        Else
            MsgBox("Jsem tam :-) ")
        End If
    End Sub
End Class

Při spuštění mi to vypisuje tuto chybu

Informace o vyvolání ladění JIT najdete na konci této zprávy,
nikoli v tomto dialogovém okně.

************** Text výjimky **************
System.Exception: Součást ActiveX nelze vytvořit.
   v Microsoft.VisualBasic.Interaction.CreateObject(String ProgId, String ServerName)
   v Test3App.Form1.Button1_Click(Object sender, EventArgs e) v C:\Documents and Settings\XPMUser\Dokumenty\Visual Studio 2008\Projects\Test3App\Test3App\Form1.vb:řádek 5
   v System.Windows.Forms.Control.OnClick(EventArgs e)
   v System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   v System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   v System.Windows.Forms.Control.WndProc(Message& m)
   v System.Windows.Forms.ButtonBase.WndProc(Message& m)
   v System.Windows.Forms.Button.WndProc(Message& m)
   v System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   v System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Načtená sestavení **************
mscorlib
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5477 (Win7SP1GDR.050727-5400)
    Základ kódu: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
Test3App
    Verze sestavení: 1.0.0.0
    Verze Win32: 1.0.0.0
    Základ kódu: file:///C:/Users/Uzivatel/Documents/_vyvoj/Test3App/Test3App.exe
----------------------------------------
Microsoft.VisualBasic
    Verze sestavení: 8.0.0.0
    Verze Win32: 8.0.50727.5420 (Win7SP1.050727-5400)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5467 (Win7SP1GDR.050727-5400)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5468 (Win7SP1GDR.050727-5400)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5467 (Win7SP1GDR.050727-5400)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Runtime.Remoting
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5420 (Win7SP1.050727-5400)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
mscorlib.resources
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5477 (Win7SP1GDR.050727-5400)
    Základ kódu: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
Microsoft.VisualBasic.resources
    Verze sestavení: 8.0.0.0
    Verze Win32: 8.0.50727.4927 (NetFXspW7.050727-4900)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic.resources/8.0.0.0_cs_b03f5f7f11d50a3a/Microsoft.VisualBasic.resources.dll
----------------------------------------
System.Windows.Forms.resources
    Verze sestavení: 2.0.0.0
    Verze Win32: 2.0.50727.5420 (Win7SP1.050727-5400)
    Základ kódu: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_cs_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------

************** Ladění JIT **************
Aby bylo povoleno ladění JIT, musí konfigurační soubor
pro tuto aplikaci nebo počítač (machine.config) mít
v oddílu system.windows.forms nastavenou hodnotu njitDebugging.
Aplikace rovněž musí být kompilována s povoleným
laděním.

Příklad:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Je-li ladění JIT povoleno, budou všechny neošetřené výjimky
odeslány ladicímu programu JIT, který je registrován v počítači,
a nebudou zpracovány tímto dialogovým oknem.
 
Odpovědět 2.12.2014 14:07
Avatar
Odpovídá na H*falk*W
Michal Štěpánek:

Nemůže to způsobovat verze .NET?

Nahoru Odpovědět 2.12.2014 18:26
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
H*falk*W
Člen
Avatar
H*falk*W:

Ahoj, netuším... Verze 3.5 jsou na obou stanicích

 
Nahoru Odpovědět 2.12.2014 18:35
Avatar
Odpovídá na H*falk*W
Michal Štěpánek:

Zkus do toho configu dát to:

<configuration>
     <system.windows.forms jitDebugging="true" />
 </configuration>

tam ti to napíše, co mu chybí...

Editováno 2.12.2014 19:41
Nahoru Odpovědět 2.12.2014 19:40
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
H*falk*W
Člen
Avatar
H*falk*W:

Ahoj,

tak jsem na to přišel... Je to tím, že tyto SAP komponenty (SAP Logon) fungují jako 32-bit.
Protože pracovní stanice má Office 32bit, funguje to jako makro ve VBA normálně.

Prosím tedy o radu, kde v nastavení Visual Studio 2008 Express nastavím, že chci danou aplikaci spouštět jako 32-bit (je-li to možné)?

Berte v úvahu velmi omezené možnosti jakýchkoliv systémových změn na pracovní stanici (ve virtuálním je to OK).

Díky

Akceptované řešení
+20 Zkušeností
Řešení problému
 
Nahoru Odpovědět 3.12.2014 13:24
Avatar
Lako
Člen
Avatar
Odpovídá na H*falk*W
Lako:

Jestli je to to co myslím, tak ve vlastnostech projektu pod záložkou Build, můžeš změnit Platform Target na 32 bit..

 
Nahoru Odpovědět 4.12.2014 1:12
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.