Hi David,
The DLL should be sufficient, however, I think with very minimal effort, you can build your DLL so that it can use used by all different kinds of windows programs - everything from Excel spreadsheets, to VB scripts, to Web pages/JavaScript, as well as perl and C and almost all other languages. I’ve done this myself (written DLLs that are used by web pages and Excel), and of course, I’ve used other DLLs like this in my programming… I’m pretty good when it comes to doing the “glue” that makes everything work together.
The only “snag”, is that it’s been 5 or 10 years since I messed with this stuff seriously, and I never really knew all the correct names for it back when I did anyhow. I’m not sure if you’re needing to write a COM interface, or an OCX, or an ActiveX or whatever (sorry!). On the upside, I can (did already) tell you how this stuff gets used, so perhaps you or someone else here can infer the name of what you need to write from the way it gets called?
“OLE” (Object Linking and Embedding) is how your DLL can let other people use itself. Here’s how perl makes use of that: xav.com/perl/faq/Windows/Act … faq12.html
And here is how VBScript does it:-
msdn.microsoft.com/en-us/library … =office.12.aspx
Here is the perl equivalent of the first example in the VBScript page above:-
perl -e “use Win32::OLE;$ie=Win32::OLE->new(‘InternetExplorer.Application’) or die $!; $ie->{‘Visible’} = 1; $ie->Navigate(‘www.pololu.com’);”
Basically - what I’m trying to say is - with minimal effort, you can make your own DLL behave like the above (perhaps called a “COM Application?”), and then everyone can use it - not just “C” programmers with compilers
Finally - while this is probably useless to you because you don’t program in perl… perl itself is able to build COM DLLs with minimal effort, which lets other people use them like I’ve described above. I guess the “worst case scenario” here, is that you fail to grok COM, release some DLL, then I can write a perl .XS interface to it, and use perl to build the DLL that lets everyone else use your code. Nightmare overhead in DLLs… but it would work, and only take a few dozen lines of code at my end
Do you have strong mac, linux, and Windows support in your products at the moment? If not, I’m happy to collaborate with you to add at least the perl modules you’ll need into your software resources that you can give to other people. I am presently busy experimenting with iOS serial interfaces as well, so there’s a slight chance that I could help you build an “Apple certified” connector that would allow anyone with an iPod, iPad, or iPhone to drive your devices directly via apps (FYI - the apple dock connector does serial I/O, albeit using 3.3v TTL, so an interface cable could be as bog-simple as a plug at one end, and a 3-wire servo-style connector at the other. Stay tuned…)