A real challenge . . . customizing programs without the source code
-
I've recently written a program that adds some new functionality to an existing off the shelf accounting program. I have no access to the source code of the accounting program. But, by using windows hooks within a DLL I was able to trigger the execution of my program when the user clicked on certain buttons within the accounting program. So, it appears to the user like I have actually modified the original program. I would like to take this to the next level, and add my own buttons/controls to the screen of the accounting program. I've used functions like SetWindowsText, to change the text of another windows title bar, and FlashWindowsEx to flash another window. But, is there any way to actually add buttons/controls/menu items to the accounting program screens? I know this sounds kind of crazy, but it never hurts to ask. The other approach I thought to take, would be to create my own window that anchors itself to the accounting program window, and place all the buttons/controls inside of it. Any suggestions, or even crazy far fetched ideas are greatly appreciated. Thanks, Chris
-
I've recently written a program that adds some new functionality to an existing off the shelf accounting program. I have no access to the source code of the accounting program. But, by using windows hooks within a DLL I was able to trigger the execution of my program when the user clicked on certain buttons within the accounting program. So, it appears to the user like I have actually modified the original program. I would like to take this to the next level, and add my own buttons/controls to the screen of the accounting program. I've used functions like SetWindowsText, to change the text of another windows title bar, and FlashWindowsEx to flash another window. But, is there any way to actually add buttons/controls/menu items to the accounting program screens? I know this sounds kind of crazy, but it never hurts to ask. The other approach I thought to take, would be to create my own window that anchors itself to the accounting program window, and place all the buttons/controls inside of it. Any suggestions, or even crazy far fetched ideas are greatly appreciated. Thanks, Chris
It sounds to me like you need two things: 1. Modify the app's existing resources, like menus, dialog boxes, etc. 2. Add your own functionality to your own menu items, buttons, etc. Well, for the first point there's a nice tool I just read about in the Lounge (see, it helps to be a bum sometimes :-) ) called ResourceHacker. That should get you started. The second point you already have covered with hooks. Regards, Alvaro
-
I've recently written a program that adds some new functionality to an existing off the shelf accounting program. I have no access to the source code of the accounting program. But, by using windows hooks within a DLL I was able to trigger the execution of my program when the user clicked on certain buttons within the accounting program. So, it appears to the user like I have actually modified the original program. I would like to take this to the next level, and add my own buttons/controls to the screen of the accounting program. I've used functions like SetWindowsText, to change the text of another windows title bar, and FlashWindowsEx to flash another window. But, is there any way to actually add buttons/controls/menu items to the accounting program screens? I know this sounds kind of crazy, but it never hurts to ask. The other approach I thought to take, would be to create my own window that anchors itself to the accounting program window, and place all the buttons/controls inside of it. Any suggestions, or even crazy far fetched ideas are greatly appreciated. Thanks, Chris
Hello, the codegurus around the world.;) I used to work the localization by loading the different langugage DLL. So, this applies to your idea. You can load the resource file by the different DLL. If this DLL doesn't exit, the application loads the resource file in EXE file. So, if you change something, (not add or delete the item from the resouce file), you can update only DLL without changing exe file.:cool: Have a nice day!
-Masaaki Onishi-
-
It sounds to me like you need two things: 1. Modify the app's existing resources, like menus, dialog boxes, etc. 2. Add your own functionality to your own menu items, buttons, etc. Well, for the first point there's a nice tool I just read about in the Lounge (see, it helps to be a bum sometimes :-) ) called ResourceHacker. That should get you started. The second point you already have covered with hooks. Regards, Alvaro
Thanks Alvaro. Resource hacker is a cool tool. Just what I needed. Chris Chris campbell.chris@excite.com www.SunAndGames.com
-
I've recently written a program that adds some new functionality to an existing off the shelf accounting program. I have no access to the source code of the accounting program. But, by using windows hooks within a DLL I was able to trigger the execution of my program when the user clicked on certain buttons within the accounting program. So, it appears to the user like I have actually modified the original program. I would like to take this to the next level, and add my own buttons/controls to the screen of the accounting program. I've used functions like SetWindowsText, to change the text of another windows title bar, and FlashWindowsEx to flash another window. But, is there any way to actually add buttons/controls/menu items to the accounting program screens? I know this sounds kind of crazy, but it never hurts to ask. The other approach I thought to take, would be to create my own window that anchors itself to the accounting program window, and place all the buttons/controls inside of it. Any suggestions, or even crazy far fetched ideas are greatly appreciated. Thanks, Chris
Interesting stuff. But creating your own modeless control box would seem to me as the safer option. Otherwise in future upgrades to your off the shelf software you may have to start from scratch. It would only take a change in menu structure or a remodel of the codes modular structure to bugger you up otherwise. We do it for the joy of seeing the users struggle.