begin process at 2012 02 15 00:57:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Divers

 > 

Ne comprend pas le mécanisme "implements" - VB6


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ne comprend pas le mécanisme "implements" - VB6

mardi 15 mars 2005 à 17:45:19 | Ne comprend pas le mécanisme "implements" - VB6

baptistemazet

Bonjour, c'est un problème qui me tracasse depuis pas mal de temps et je ne vois pas comment le résoudre si ce n'est faire appel à vous qui serez super sympa de me répondre !

Je souhaite utiliser la classe "Application.cls" qui implemente "SWPublished.SWAddin" dans mon projet ".vbp".

1 - Comment faire ?

2 - SWAddin est une interface. Application.cls qui l'implemente n'a pas de main() !  Comment récupérer le iCookie d'une instance Application ou d'une instance de SWAddin ?

Merci de me livrer vos suggestions ! Baptiste

Voici la classe :

Application.cls

Implements SWPublished.SWAddin

Public iSldWorks                   As SldWorks.SldWorks
Public iCookie                     As Long
Public iToolbarID                  As Long

'Implementation methods of the SwAddin interface
Public Function SwAddin_ConnectToSW(ByVal ThisSW As Object, ByVal Cookie As Long) As Boolean
   
    Dim bRet                As Boolean
   
    'Store reference to SW session
    Set iSldWorks = ThisSW
   
    'Store cookie from SW
    iCookie = Cookie
    
    'Inform SW about the object that contains the callbacks
    'bRet = iSldWorks.SetAddinCallbackInfo(App.hInstance, Me, iCookie)
      
    'Add a menu item on the frame when no documents are present
    bRet = iSldWorks.AddMenu(swDocNONE, "SampleNONE", -1)
    bRet = iSldWorks.AddMenuItem2(swDocNONE, iCookie, "DocNONE_Item@SampleNONE", -1, "DocNONE_Item", "DocNONE_ItemUpdate", "Sample|DocNONE_Item hint string")
    
    'Fonction de la classe SWAddin héritée par Application.cls
    SwAddin_ConnectToSW = True

End Function

mardi 15 mars 2005 à 18:23:07 | Re : Ne comprend pas le mécanisme "implements" - VB6

crenaud76

Pourquoi une classe devrait avoir un Main !!!!!
Pour obtenir le membre icookie d'une isntance de Application.cls y juste à faire :

Dim UneInstance As New Application.cls
Msgbox UneInstance.iCookie

icookie est un membre public de ta classe, donc je ne voit pas ou est le souci !!!

Christophe R
mardi 15 mars 2005 à 18:53:12 | Re : Ne comprend pas le mécanisme "implements" - VB6

baptistemazet

Merci pour ta reponse Christophe !

Le problème est que je dois faire appel à cette classe Application.cls dans mon programme à un moment où une instance : UneInstance comme tu l'as appelée, est active. Je ne vois vraiment pas comment l'intégrer et accéder à cette valeur de iCookie déjà défini alors, mais où ? Je n'ai en effet pas accès au code de SWAddin.

Si quelqu'un connait les add-in solidworks ou l'utilisation correcte d'implements, merci de me donner des idées de réflexion.

Baptiste

mardi 15 mars 2005 à 19:58:57 | Re : Ne comprend pas le mécanisme "implements" - VB6

crenaud76

si je pige le pb tu dois simplement faire appel à cette fonction SWAddin_ConnectToSW via ton isntance de Application.cls et ensuite tu accèdera au membre iCookie de ton instance.
En fait, Application.cls n'est qu'un réhabillage de SWAddin, pour te permettre d'y accéder

Christophe R
mercredi 16 mars 2005 à 11:39:53 | Re : Ne comprend pas le mécanisme "implements" - VB6

baptistemazet

Salut Christophe,

La suggestion est bonne par rapport à ce que j'avais pensé de l'application. J'ai testé ta proposition, c'était judicieux mais ça ne marche pas ...

En fait, ce projet représente un add-in qui génère une dll. Cette dll est alors chargée dans un programme externe pour générer des menus et barres d'outil.

Mon objectif était d'unifier ces opérations au-seins d'un même projet sans avoir à charger cette dll. Je me devais donc de comprendre le principe ! Mais je crois que c'est pas la peine !
Application.cls est indépendant de l'application (en l'occurrence Solidworks) que j'execute ! Bizare Bizarre tout ça !

Une idée sur  comment faire pour ne pas avoir besoin d'intégrer cette dll - implémentant l'équivalant du code dans le projet sur lequel je travaille ?

Merci

Baptiste




Cette discussion est classée dans : application, cls, swaddin, icookie, isldworks


Répondre à ce message

Sujets en rapport avec ce message

VB3 et le Web [ par Albion ] Bonjour,Je recherche une méthodologie pour faire d'une application VB3 standard une application DHTML (ou IIS).Je sais d'ores et déjà comment ouvrir u Help [ par Sam ] Salut,Quelqu'un peut-il m'aider, je dois créer une DLL qui me ferait la traduction de messages d'erreur dans une application en VB6,du français en une Événement lorsqu'un feuille est cliquée [ par Amonbofis ] Quelqu'un sait comment on fait pour exécuter unévénement dès qu'on clique le titre d'une application?Je m'explique, j'aimerais démarrer mon Applicati Multirésolution [ par Vanille ] Dans une application VB4(16 bits), j'utilisais la ressource VSBBX, le contrôle VSElastic permettant la multirésolution. Ayant converti l'application e paramètre à un programme VB [ par ddp ] Comment recupérer un paramètre passer à mon application .par exemple : - monappli.exe fichier.extJe sais enregistrer les extensions des fichiers de mo Comment executer une application w32 [ par Jean ] BonjourJe cherche a lancer un programme a partir d' une application que je fabrique sous VB5.Merci d'avance execution d'une application vb5/reseau nt4/1processeures [ par caandoit_ma ] l'execution de mes application sur un poste de mon LAN fait trop du temps pour acceder au donnée par contre sur mon cerveur il marche parfaitementet b Probleme de ISAM [ par Hassan ] j'ai une application en cours de developpement et mon probleme c'est que si je lance l'application un message d'erreur apparaissent le voilà: "Couldn' lancement de l'application en meme temps qu'une autre [ par silix ] 'lutJe voudrais lancer mon application lors de la connnexion à Internet. Comment faire ?Thx Help!! Comment peut on sauver des fichiers après la fermeture de l'application????? [ par ludvo ] J'ai un gros problème, je viens de mettre en projet un logiciel de gestion de portefeuille (syle money) mais je ne sais pas comment sauvegarder les co


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,195 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales