I just don't see the need to roll bitcoin into an obfuscated exe to run a command line option, there aren't too many people using bitcoin that can't do that, and I am apprehensive that you think this is novel.
If you are going to be copying wallets around for people (which might actually be of utility if done right, but again, you haven't spelled out that you understand why you are doing it), it is very important you understand the 100 key
problem. I'll just cut and paste here for reference:The wallet contains a pool of queued keys. By default there are 100 keys in the key pool. The size of the pool is configurable using the "-keypool" command line argument. When you need an address for whatever reason (send, “new address”, generation, etc.), the key is not actually generated freshly, but taken from this pool. A brand new address is generated to fill the pool back to 100. So when a backup is first created, it has all of your old keys plus 100 unused keys. After sending a transaction, it has 99 unused keys. After a total of 100 new-key actions, you will start using keys that are not in your backup. Since the backup does not have the private keys necessary for authorizing spends of these coins, restoring from the old backup will cause you to lose Bitcoins.
To summarize, as long as less than 100 addresses are ever used per wallet (and you know this wasn't overridden at the command line because your program can actually understand the berkley db format used in wallet.dat), you can have multiple copies of the wallet on several client instances, and all of them can send and receive bitcoins. However you are opening a pandora's box, because even with deep inspection of wallet contents, you can not avoid the potential for monetary loss by users when arbitrarily copying around wallets.
I will spell out the chronology of how you directly can cause and enable losses (by the way, this somewhat applies to wallet backups too):
1: I have a wallet with 200 unique addresses and corresponding private keys for re-sending those addresses' funds,
2: I let your utility copy my wallet to a USB stick,
3: I run the local computer version of bitcoin, press "generate new address", and receive bitcoins at it,
4: I run the portable usb version of bitcoin, press "generate new address", and receive bitcoins at it,
5: Now the seperate wallets are the only ones that can send their respective bitcoins,
6: Your program copies one of these wallets over the other one, and I lose the ability to send all the bitcoins that were at that address.
I hope your idea for a "wallet manager" isn't a copy command in a batch file that you ran through your BAT2EXE... I doubt it can understand the -datadir option I'm already using to frustrate trojans that are just as naïve