Help required to create an add-in DLL

Hello to all,
I'm trying to write an add-in .DLL for SolidWorks 2004 under Visual Basic 6.
The .DLL in itself seems to run fine... I've started my project by
modifying someone else's project (Ray Gorman). Using his .reg files which
is:
===================================
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Solidworks\AddIns\{8B38509E-DEAD-48EF-8F91-16CE
B1E9779F}]
@=dword:00000001
"Description"="Perform a task..."
"Title"="Fontaine - OriginalProject"
====================================
and his batch file:
====================================
echo Engineering Studio registration command:
echo H. Fontaine Ltee - OriginalProject.dll...
regedit -s OriginalProject.reg
regsvr32 OriginalProject.dll
=====================================
Using this, I'm able to register my .dll in SolidWorks and use it instead of
the OriginalProject.dll .
However, the descritpion under the Tools -- Add-in menu is still Fontaine -
OriginalProject ... Also, I don't want my add-in to replace
OriginalProject, but to be another different add-in.
What I've tried to do was to change OriginalProject.reg and
OriginalProject.dll by my names (TestProject.reg and TestProject.dll).
As I understand it, the CLSID needs to be unique. I've been able to
generate a new CLSID using code from:
formatting link
I put it in the .reg file.
However, in SolidWorks, my .dll now appears in the Add-in menu, but when I
try to activate it (in the add-in menu), SW gives an errors, says it can't
find a file...
I'm not sure about this, but I think that the problem lies in the fact that
nowhere I tell the computer that my new CLSID is linked to the
TestProject.dll file... Is this the problem? Does the CLSID need to be
hard-coded somewhere in my VB code?
Also... Should the CLSID be generated once only in my computer, and each
user will use that CLSID, or should it be generated on each user computer?
Note: I intend to distribute my add-in, so it wouldn't look good if the user
had to start the add-in using the File -- Open fucntion from SolidWorks...
I'd like to automate the registration process...
Thank you very much for your help!
As you may have guessed it, I'm quite new to this add-in and .dll stuff
(though I'm not too bad in VB, I think...)
- Fontaine_Guy
Reply to
Fontaine Guy
Loading thread data ...
formatting link
->swAddInTutorial
any help?
regards Markku
formatting link
Reply to
Markku Lehtola
First, you may be trying too hard. Addins are self-registering if you drag-and-drop into SW (or, open the addin file from SW using "File --> Open" and setting the file selection filter for addin .dll's).
I have some tools that may help.
This one is to purge registry settings of addin data:
Also, a work-in-progress is my add-in from VB .exe project. , filename "MakeAddinFromExeVB.zip". This may give you some additional clues, as well as info about the registry keys you may need.
Reply to
TheTick
Hello Markku,
Thank you for your tutorial... This was quite helpful, as I now may start from scratch a project...
Thanks again.
- Fontaine Guy
"Markku Lehtola" a écrit dans le message de news:chpsd1$ids$ snipped-for-privacy@phys-news1.kolumbus.fi...
Reply to
Fontaine Guy
Hello,
You may be right, I might have been trying too hard... I still don't know exactly how to register an add-in using a batch file (which would still be nice), but it is okay to register them with "File / Open".
I will have a thorough look at your files. Thank you!
- FontaineGuy
"TheTick" a écrit dans le message de news: snipped-for-privacy@posting.google.com...
[HKEY_LOCAL_MACHINE\SOFTWARE\Solidworks\AddIns\{8B38509E-DEAD-48EF-8F91-16CE
SolidWorks...
Reply to
Fontaine Guy
also, if you install the SW SDK, you will get a new project type for add-ins.
Evan
[HKEY_LOCAL_MACHINE\SOFTWARE\Solidworks\AddIns\{8B38509E-DEAD-48EF-8F91-16CE
Reply to
Evan T. Basalik

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.