Abrolen Posted May 26, 2009 Share Posted May 26, 2009 Hi! Didn't find related topic, so creating new one. Is it possible to use ActiveX controls and dynamic libraries without installing an application, by simply running EXE file? It’s means there is no temporary files, all ActiveX controls and DLLs are used from memory buffer. And there is no need to register DLLs. Thanks! Link to comment Share on other sites More sharing options...
Richard Robertson Posted May 26, 2009 Share Posted May 26, 2009 (edited) ActiveX can be used without being registered but the technology was designed to be registered first. Use standard dll functions if you don't want to register anything. Edited May 26, 2009 by Richard Robertson Link to comment Share on other sites More sharing options...
Abrolen Posted July 25, 2009 Author Share Posted July 25, 2009 Thanks, but I've found an easier solution: BoxedApp SDK http://boxedapp.com/ Link to comment Share on other sites More sharing options...
Richard Robertson Posted July 25, 2009 Share Posted July 25, 2009 The program you linked to is about virtualization. It doesn't affect how ActiveX objects still have to be registered. Link to comment Share on other sites More sharing options...
Creator Posted July 26, 2009 Share Posted July 26, 2009 (edited) I work with non-registerred dll's with the help of a little tool called ILMerge. My Steps to succes >_< : * Register the dll on your development system with regsvr32 (eg. AutoItX3.dll) * Reference the dll from your project in a IDE of choice (i use sharpdevelop). * Use the methods and properties you need from the dll in your code. * After compiling your assembly there will be a interop.<dllclassname>.dll in your bin directory * now comes the trick: you can merge the assembly and the interop dll into a new single executable with ILMerge.exe From now on you exe will run from any system without having registered the dll on that system. Get ILMerge here: http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-b4ad-4eae-87cf-b14ae6a939b0&displaylang=en Cheers -edit- example use for merging AutoItX3.dll: "ilmerge" /target:winexe /out:New-Executable-Merged.exe Old-Exe-Name.exe Interop.AutoItX3Lib.dll(-> was created by referencing AutoItX3.dll) Edited July 26, 2009 by Creator Link to comment Share on other sites More sharing options...
Richard Robertson Posted July 26, 2009 Share Posted July 26, 2009 I'm surprised that actually works. I was under the impression that the interop assembly still called the locally registered object and was just a wrapper for it. Link to comment Share on other sites More sharing options...
Creator Posted July 27, 2009 Share Posted July 27, 2009 I'm surprised that actually works. I was under the impression that the interop assembly still called the locally registered object and was just a wrapper for it.I double checked that remark. And you absolutely right. I wasnt aware that my target systems had AutoItX3 already registered (i believed it was not).I did a regsvr32 /u and tried again.....after the tears had dried, i saw that the dll indeed must be registered./me gets a broom and puts together a broken dream... ;-)Cheers Link to comment Share on other sites More sharing options...
Richard Robertson Posted July 27, 2009 Share Posted July 27, 2009 Combining the interop assembly with the main assembly does make it a bit cleaner though. Points for trying. Link to comment Share on other sites More sharing options...
aef03 Posted January 12, 2011 Share Posted January 12, 2011 Thanks, but I've found an easier solution: BoxedApp SDK http://boxedapp.com/Are you used BoxedApp together with Autoit or instead of autoit ?If you are using it together, do you know if an autoit exe can be instantiate the boxedapp apis so that anything it is doing and calling is virtualized? Link to comment Share on other sites More sharing options...
lovespell88 Posted February 9, 2011 Share Posted February 9, 2011 To fix activex controls, try uninstalling then re-installing it afterwards. To do this, click on Tools and select Manage Add-Ons > Enable/Disable Add-Ons. Choose Downloaded ActiveX Controls and highlight the ActiveX control you want to delete. Delete it and go to the website where you downloaded your ActiveX control and reinstall the it correctly. Link to comment Share on other sites More sharing options...
StarDrago Posted February 8, 2012 Share Posted February 8, 2012 Interesting discuss it's powerful SDK for developers but few people have heard about it. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now