2009-02-24 3 views

Répondre

0

Créez simplement une bibliothèque de classes. Dans les propriétés du projet, ouvrez la boîte de dialogue où vous pouvez modifier les informations d'assemblage et cochez la case "Make assembly COM-visible" (désolé, ne connaissez pas le nom exact de l'option, en utilisant German VS 2008).

Ensuite, ajoutez les attributs suivants à une classe qui doit être utilisé à partir Navision:

[ClassInterface(ClassInterfaceType.AutoDual)] 
[ProgId("YOUR-ID-GOES-HERE")] 
[ComVisible(true)] 
[Guid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")] 
public class ComVisbleClass 
{ 
    .... 
} 

Je vous suggère également d'attribuer manuellement Disp-ID aux propriétés et méthodes en utilisant l'attribut DispId. Dans le cas contraire, l'insertion de nouvelles méthodes ou propriétés publiques peut casser la fonctionnalité Navision, car les identifiants Disp-ID peuvent être modifiés lors de la compilation. Navision se rapporterait alors aux anciens Disp-ID qui peuvent maintenant «pointer» vers des méthodes différentes. C'est un PITA à déboguer et à résoudre, utilisez donc l'attribut DispId depuis le début.

Questions connexes