Communauté
Civil 3D et InfraWorks - Français
Partagez vos connaissances, posez des questions, collaborez sur des idées, et explorez les sujets Civil 3D populaires.
annuler
Affichage des résultats de 
Afficher  uniquement  | Rechercher plutôt 
Vouliez-vous dire : 

Civil 3D : Erreur dans Visual Studio, en C#, avec la dll "AeecDbMgd.dll".

5 RÉPONSES 5
RÉSOLU
Répondre
Message 1 sur 6
jb.boschung
403 Visites, 5 Réponses

Civil 3D : Erreur dans Visual Studio, en C#, avec la dll "AeecDbMgd.dll".

Bonsoir,

Débutant en .net8, je rencontre un problème dans Visual Studio 2022, en C# et avec la dll 'AeecDbMgd.dll'.
Cette dll est nécessaire pour accéder à la class 'CivilDocument'


J’ai développé un code très simple qui devrait me permettre d’afficher les identifiants des réseaux sous pression que j’ai créer dans un fichier DWG (Civil 3D).

 

using Autodesk.Civil.ApplicationServices;
using Autodesk.Civil.DatabaseServices;
using Autodesk.Civil.Runtime;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.Civil.Settings;
using System.Linq;


Console.WriteLine("Starting AutoCAD commands...");

// Obtient le document civil actif
CivilDocument civilDoc = CivilApplication.ActiveDocument;

// Appelle la méthode pour obtenir les IDs des réseaux de tuyaux sous pression
ObjectIdCollection networksIds = civilDoc.GetPressurePipeNetworkIds();


foreach (ObjectId networkId in networksIds)
{
    Console.WriteLine(networkId);
}

Console.WriteLine("Press any key to exit.");
Console.ReadKey();

 

 

Dans les Assemblys, j’ai ajouté les dll suivantes :

jbboschung_0-1722794844459.png


Et la dll est bien présente selon son chemin d’accès :
C:\Program Files\Autodesk\AutoCAD 2025\C3D\AeccDbMgd.dll

Quand je lance l’exécution du programme, j’obtiens ce message d’erreur :

jbboschung_1-1722795029315.png


Nous avons aussi essayé avec la même dll mais avec la version Civil 3D 2024, ainsi que plusieurs package ou elle est présente. Nous avons aussi essayé de la copier en local, mais rien n’y fait, j’ai toujours ce message d’erreur.

Une idée ?

Merci d’avance





5 RÉPONSES 5
Message 2 sur 6
O_Eckmann
en réponse à: jb.boschung

Bonjour @jb.boschung ,

 

A priori, c'est un application .EXE externe qui doit lancer Civil et le piloter depuis l'extérieur? Ce n'est pas une DLL qui se charge sous Civil 3D?

Normalement si l'application lance C3D, puis ouvre ton DWG, cela devrait normalement charger la DLL nécessaire.

 

J'ai toujours développé des plug-ins qui se chargent sous AutoCAD, donc je n'ai jamais été confronté à ce problème.

Pourquoi une appli externe qui lance C3D, plutôt qu'un plug-in qui se chargerait sous Civil, puisque la machine sur laquelle l'appli tourne a besoin que Civil soit installé?

 

Olivier Eckmann

EESignature

Message 3 sur 6
jb.boschung
en réponse à: O_Eckmann

Bonjour et merci pour votre retour.

Alors effectivement comme je l'ai mentionné, je débute en .net, en  c# et dans Visual Studio 2022, et je ne savais pas que le type d'exécutable et le fait de lancer Civil 3D dans l'appli ou au contraire, charger le plug-in dans Autocad/Civil 3D avait une importance. J'aurai appris quelque chose.

Je pense aussi qu'un plug-in à charger dans Civil 3D, est plus adapté et peut-être plus simple (je me trompe peut-être), vu que de toute façon, je dois avoir un réseau sous pression de modélisé, pour traiter la liste des composants.

Je vais donc regarder sur cette piste, d'un plug-in à charger dans Civil avec la commande 'NETLOAD'.

Merci pour votre retour.
Salutations

Message 4 sur 6
O_Eckmann
en réponse à: jb.boschung

Sûrement la meilleure manière de débuter via les explications de Gilles chanteau : https://gilecad.azurewebsites.net/ProjectTemplatesFR.aspx 

Olivier Eckmann

EESignature

Message 5 sur 6
jb.boschung
en réponse à: O_Eckmann

Bonsoir,
Merci pour ce complément, je vais voir ça,

En attendant j'ai repris les bases et mon premier Plugin... affiche bien le message classique 'HelloWorld'. 

jbboschung_0-1722881217884.pngjbboschung_1-1722881230677.png


C'est toujours un bon début...

Message 6 sur 6
jb.boschung
en réponse à: O_Eckmann

Et voici l'ID du réseau sous pression dans la ligne de commande.

jbboschung_0-1722882602343.png


Tout roule, c'est parfait.
Il n'y a plus qu'à faire un formulaire, liste les pièces, chercher les quantités et les prix, et mes devis seront générés directement dans Civil 3D. Bon je pense que je vais encore suer, mais c'est un très bon début.

@O_Eckmann : Merci infiniment pour le retour et l'aide.

Vous n'avez pas trouvé ce que vous recherchiez ? Posez une question à la communauté ou partagez vos connaissances.

Publier dans les forums  

Autodesk Design & Make Report