Programmabsturz bei kombination Audiogenie und ShellMeagaPack

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von darkman203.

    Programmabsturz bei kombination Audiogenie und ShellMeagaPack

    Hallo zusammen,

    ich nutze schon länger die Audigenie.dll zum auslesen von ID3 Tags.
    Bis jetzt war alles gut, nur habe ich mir vor kurzem ein Control von LogicNP Sofware - Shell MeagaPack zugelegt.
    Sobald ich nach Programmstart die mp3 Datei an Audiogenie übergen habe, bekomme ich von Audiogenie die Fehlermeldung:
    (Entferne ich das Shell MeagaPack Control funktioniert es.)
    System.BadImageFormatException wurde nicht behandelt.
    Message=Es wurde versucht, eine Datei mit einem falschen Format zu laden. (Ausnahme von HRESULT: 0x8007000B)
    Source=Explorer
    StackTrace:
    bei Explorer.AudioGenie.AudioGenie2.AUDIOAnalyzeFileW(String FileName)
    bei Explorer.AudioGenie.AudioGenie2.AUDIOAnalyzeFile(String FileName) in C:\Program Files (x86)\LogicNP Software\Shell MegaPack.Net 2012\FolderView.Net Control 2012\Samples\VB.Net Samples\Explorer\audiogenie3.vb:Zeile 3530.
    bei Explorer.MP3.ID3V2.Lesen(String Datei) in C:\Program Files (x86)\LogicNP Software\Shell MegaPack.Net 2012\FolderView.Net Control 2012\Samples\VB.Net Samples\Explorer\ID3.vb:Zeile 316.
    bei Explorer.Explorer.Form1.Button1_Click(Object sender, EventArgs e) in C:\Program Files (x86)\LogicNP Software\Shell MegaPack.Net 2012\FolderView.Net Control 2012\Samples\VB.Net Samples\Explorer\Form1.vb:Zeile 568.
    bei System.Windows.Forms.Control.OnClick(EventArgs e)
    bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
    bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
    bei System.Windows.Forms.Control.WndProc(Message& m)
    bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
    bei System.Windows.Forms.Button.WndProc(Message& m)
    bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    bei System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
    bei System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
    bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
    bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
    bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
    bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
    bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
    bei Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
    bei Explorer.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:Zeile 81.
    bei System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
    bei Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
    bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
    bei System.Threading.ThreadHelper.ThreadStart()
    InnerException:

    Über Google habe ich dazu dass gefunden: :?:
    Diese Ausnahme wird ausgelöst, wenn eine nicht verwaltete DLL (Dynamic Link Library) oder eine ausführbare Datei an die Load-Methode zum Laden übergeben wird.
    Nur leider hilft mir dass jetzt zum einem auch nicht weiter und wiso tritt der Fehler nur auf wenn Audiogenie und Shell MeagaPack zusammen genutzt werden?

    Hoffe jemand kann mir weiterhelfen.
    Der Fehler tritt auch auf, wenn man eine x86-DLL in eine x64-Anwendung laden will. Wenn "Shell MegaPack" x86 ist und deine Anwendung mit "Any CPU" kompiliert auf einem x64-Rechner läuft zum Beispiel.
    Lösung dafür: Anwendung auf "x86" umstellen (dazu findest du hier einige Threads).

    Viele Grüße, Phil.