Recuperer le nom d'un fichier solidworks en vb [Résolu]

Signaler
Messages postés
28
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
19 novembre 2008
-
Messages postés
28
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
19 novembre 2008
-
Bonjour.
Voila mon probleme:
Je souhaite simplement recuperer le nom d'un fichier deja ouvert a partir de solidworks, en utilisant vb6.
j'ai donc essayer le code suivant:

Dim app-solid, des-soli As Object
Dim txt

Set app-solid = GetObject(, "SldWorks.Application")
Set des-solid = app-solid.ActiveDoc
txt =des-solid.GetPathName()

Label1.Caption = txt

le type de librairie solidworks est bien référencé (dans "Projet\reference")
mais rien ne fonctionne.
Si quelqu'un pouvais essayer de me depanner, ce serait sympas.
D'avance merci

Ami ben

4 réponses

Messages postés
28
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
19 novembre 2008

Je te remercie pour ton aide, car j'ai reussi avec le code suivant:
Dim SwApp As Object
    Dim Part As Object
    Dim SelMgr As Object
    Dim selObj As Object
    Set SwApp = CreateObject("SldWorks.Application")
    Set Part = SwApp.ActiveDoc
     If Part Is Nothing Then X = MsgBox("pas de piece active !", vbCritical): Exit Sub
frm1.Label1.Caption = Part.GetPathName & Chr(13) & Mid(Part.GetPathName, InStrRev(Part.GetPathName, "") + 1)
 frm1.txt_att_valeur.Text = Part.CustomInfo2("", frm1.txt_nom_att.Text)
En effet j'ai changer "GetObject" par CreateObject, ce qui me permet de recuperer le nom du fichier ouvert.
Encore merci pour l'aide

Ami ben
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Salut,
Si tu travailles Bien en VB6, il faut TOUT DE SUITE changer le nom de tes varailes, VB6 ne supporte pas les - dans les noms de variables.

Peu être cela résoudra t il ton problème.

N'oublies pas non plus de typer au maximum tes variables.

Essaies donc ceci.

Dim appsolid, dessolid As Object
Dim txt As String

Set appsolid = GetObject(, "SldWorks.Application")
Set dessolid = appsolid.ActiveDoc
txt = dessolid.GetPathName(), ----
[../code.aspx?ID=41455 By Renfield]

@+: Ju£i€n
Pensez: Réponse acceptée
Messages postés
28
Date d'inscription
mercredi 2 juin 2004
Statut
Membre
Dernière intervention
19 novembre 2008

Bonjour, et merci pour ton aide.
J'ai repris le code que tu as fourni, mais il y a le message d'erreur suivant: Erreur 429, le composant activeX ne peut creer l'objet, sur la ligne "Set appsolid = GetObject(, "SldWorks.Application")".
alors le type de librairie solidworks est bien référencé.

Ami ben
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Re,
Est ce que la DLL est libre au téléchargement?
Si oui dit moi ou la trouver.

@+: Ju£i€n
Pensez: Réponse acceptée