Announcement

Collapse
No announcement yet.

Probleme mit COM-Assembly

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Probleme mit COM-Assembly

    Hallo,

    ich habe ein C#-Projekt das ich automatisch für COM registrieren lasse. Das klappt auch super (also der Aufruf über COM). Nun will ich aber ein Testprojekt anlegen, dass mein C#-Projekt testet - über den ganz normalen .NET-Projektverweis. Aber plötzlich lässt sich die DLL beim Starten des Testprojekts nicht mehr finden. Innerhalb des Testprojekts sieht allerdings alles gut aus. Intellisense usw. funktionieren...

    Fehlermeldung: Es konnte keine Instanz der GoogleMapsTest.GeocoderTest-Klasse erstellt werden. Fehler: System.IO.FileNotFoundException: Die Datei oder Assembly GoogleMapsWrapper, Version=2.1.0.0, Culture=de-DE, PublicKeyToken=79839ebb8bb560da oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden.

    Was ist da passiert?

    MfG Kim

  • #2
    Datei verschoben so das die Registry den COM-Server woanders im Dateisystem sucht

    Comment


    • #3
      Also die DLL wird aber automatisch ins Ausführungsverzeichnis der Test.exe geschoben. Außerdem will ich ja eigentlic nicht auf den COM-Server sondern die DLL über den "normalen" .NET weg ansprechen - als ob ich die DLL gar nicht für COM geschrieben hätte

      Comment


      • #4
        Hallo,
        wenn der Culture-Eintrag <i>de-DE</i> verwendet wird, muss die Assembly in einem entsprechenden Unterverzeichnis sein. Bei einem Culture-Eintrag gilt die folgende Suchreihenfolge: <br>
        1. Wenn die CLR eine Assembly mit richtigem Namen und richtiger Version, aber einem unterschiedlichen Culture-Eintrag vorfindet, bricht sie das Probing ab (d.h. es werden keine anderen Verzeichnisse durchsucht) <br>
        2. Unterverzeichnis mit dem Culture-Namen im Unterverzeichnis mit dem gleichen Namen wie die Assembly (ohne Dateiendung) <br>
        3. Unterverzeichnis mit dem Culture-Namen für jedes Verzeichnis in der privatePath-Auflistung

        Die vom .NET Framework durchsuchten Verzeichnisse listet das <b>Assembly Binding Log Viewer Utility</b> (FUSLOGVW.EXE) aus dem .NET Framework auf. Dieses sehr nützliche Tool zeigt eine detaillierte "Fehlerliste" an

        Comment


        • #5
          Hallo,

          also wenn ich im bin/Debug ein Unterverzeichnis de-DE anlege und dort manuell die Dll hinlege klappt es. Kann ich das mit dem VS automatisieren? Der legt das standardmäßig leider direkt in bin/Debug.

          Grüße KI

          Comment


          • #6
            Noch als Zusatz: Eigentlich will ich gar keine Spracheneinstellungen (ich habe nur deutsch), habe aber festgestellt, dass ich mit leerer Culture auch bloß keine Installation hin bekomme?

            Comment

            Working...
            X