A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.
First, please excuse me for sounding dense. I don't want someone to do my work for me, just a nudge in the right direction.
Here's the situation: An application (C#) allows you to "invite" other users. The mechanisim will email the invite as an attachment to a user. Perhaps also support for IM distribution if that's possible and easy.
This invite needs to work in two ways. First, it needs the ability to detect the presence of the application. If it's not present, it needs to download it and install. In either case, it needs to carry a "payload." This data is generated by the client that sends the invite.
Currently, my flow looks like this:
- User Executes Invite
- Invite drops the payload data into a "StdIn" type directory.
- Invite checks for presence of Application. If present, quit.
- Download the install package and initiate install.
The part I don't have a handle on yet is marrying the payload with the exe for simple distro.
The application is C# but the invite app will have to be written in another langauge. Preferably VB6 as it's my most proficient non .Net language. But C is also an option, if necessary.
I'm no expert ;)
I have 'heard'(read) that you can append anything you want to the end of a executable (.exe) that you want. There. The rest is implementation and I just don't want to type it all out now. I might make a fool out of myself. ... ... Oh well. You could append 'something' to a exe and follow that by appending the length of the 'something'. That way you can backtrack in the exe and get out exactly what you want. Probably there are lots of better ways though.
Tuesday, April 25, 2006
Here's basically what I've come up with:
Store obfuscated source code for the "invite" (VB6) application within the master (C#) application.
When an invitation is requested, an encryption key is generated on the fly, and it's parsed into the source files. Then, using the VB6 command line compiler--which i'll distribute with my application--compile the "one off" application. Zip it up, attach to an email, and sent out the door.
It's probably not the BEST solution, but it'll work. I hope. =)
This topic is archived. No further replies will be accepted.Other recent topics
Powered by FogBugz