Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

making a Demo

Status
Not open for further replies.

MIB

Programmer
Feb 12, 2000
3
0
0
US
Was wondering if anyone knew of a website that can help me with making my app a demo as in a 30 day trial so the app will stop functioning till they register <br>

<br>

thanks
 
How much does that cost?<br>
SoftwareKey Licensing System? <p> DougP<br><a href=mailto: dposton@universal1.com> dposton@universal1.com</a><br><a href= > </a><br>
 
It ranges from expensive to very expensive. (Pardon me for breaking in here). But the optional packages might make it worthwhile for a company planning large-scale internet software sales.<br>
For low-volume sales you might consider writing the value of the &quot;first run date&quot; into the executable and have the app display an expiration message when the current date or a run counter exceeds a preset limit. When you have the customer's money in hand, send him a patch program and a key-code to unlock the app and register it.<br>
Just a cheap thought :)<br>
<br>

 
I wrote my own but what a pain it was.<br>
<br>
How do you do this????<br>
<br>
&quot;consider writing the value of the &quot;first run date&quot; into the executable and have the app display an expiration message when the current date or a run counter exceeds a preset limit&quot;<br>
<br>
Where is it in the .EXE creation screen? <p> DougP<br><a href=mailto: dposton@universal1.com> dposton@universal1.com</a><br><a href= > </a><br>
 
Doug,<br>
<br>
Question for you. What if I make you're executable read-only. Can I run your application forever? If it's read only, I might have to put up with an error your program throws because it can't update the date in the .EXE. But it might be enough for me to put up with so I don't have to purchase your program. Of course I wouldn't do this, but there are those out there that would. Just a tought. Have you tried your code on a read only file?<br>
<br>
Steve<br>
<A HREF="mailto:sdmeier@jcn1.com">sdmeier@jcn1.com</A>1
 
It's hard to stop a determined app from setting file attributes, right Doug?<br>
And it isn't such a pain to Put and Get a value from the EXE file, so long as you make sure it knows where to find it.<br>
One of my recent projects retained its configuration settings and user data in an encrypted 512 byte structure appended to the executable. It knows exactly where to find all the information it needs.<br>
You won't find the easy and cheap answers in the VB IDE. All you have to do is write a couple lines of code and get really sneaky.
 
To answer Steves Question No I did not try to make my .EXE readonly. I saved the Date in a file called something.dll<br>
So when the program first ran it created the file and put today' date in it then opened the file and examined the date everytime after that. <br>
If the file was missing then it would not run either.<br>
Now when they registerd the program all they had to do was key in their name and a serial number I generated based on their name with a Check digit scheme and it would unlock the program. When thiry days were up it would only allow them to go to my WEB site and register it. I also deleted something from the setup file list so if it was run again it would do the same thing. You could Only register it.<br>
Like I said this took a long time to debug and prove out.<br>
<br>
So back to Alt255, I guess I'm blind or something I don't know how to write something using VB to the executable.<br>
Can you be more specific? Is there an API or something?<br>
<br>
<p> DougP<br><a href=mailto: dposton@universal1.com> dposton@universal1.com</a><br><a href= > </a><br>
 
Looks neat, Netwalker, especially if it's free. Couldn't get much info from the site, 'though.<br>
And Doug, it shouldn't take much imagination to convert this hasty code to your needs:<br>
<br>
On Error Resume Next'bad form but sometimes ya gotta do it!<br>
MyEXE$ = &quot;C:\MYWARE\MYEXE.EXE&quot; 'mandatory installation path<br>
ff = FreeFile<br>
Open MyEXE$ For Binary As #ff<br>
If LOF(ff) &lt; 1 Then<br>
MsgBox &quot;Files missing from the application folder. Please reinstall.&quot;<br>
Close #ff<br>
Kill MyEXE$<br>
End<br>
End If<br>
CheckDate$ = String$(10, 0)<br>
Get #ff, LOF(ff) - 9, CheckDate$<br>
If CheckDate$ = String$(10, 0) Then 'no date at end<br>
CheckDate$ = Date$<br>
Put #ff, LOF(ff) + 1, CheckDate$<br>
Close #ff<br>
MsgBox &quot;First Run&quot; 'must be a new installation<br>
Exit Sub<br>
End If<br>
If DateValue(Date$) &gt;= DateValue(CheckDate$) + 30 Then<br>
MsgBox &quot;Trial period has expired!&quot;<br>
Close #ff<br>
End<br>
End If<br>
<br>
MsgBox &quot;Installed on &quot; & CheckDate$<br>
<br>
Cheers!<br>

 
By the way. This works without crashing the app because the second and third fields in the EXE Header specify the number of 512-byte pages and any extra bytes in the file. The OS will only load and execute that many bytes.<br>
In practice, you would want to encrypt the date by XORing it with the contents of a ten-byte string of garbage to prevent any slick hacker with a binary editor from extending his evaluation period to the year 2027.
 
Cool I give it a try.<br>
And while we are on the subject of DEMO's<br>
Does any one know of A CHEAP way to Sell programs uisng Credit card Transactions and Processing on the WEB.<br>
I have use a ISP that charges $50.00 a month for E-Commerce<br>
Thats just the start.<br>
<p> DougP<br><a href=mailto: dposton@universal1.com> dposton@universal1.com</a><br><a href= > </a><br>
 
<br>
Alt255,<br>
<br>
LOF is the Length of File (in bytes), right? But what's this LOF(ff) - 9 and LOF(ff) + 1 ? What's the -9 and +1 ?
 
That's where's he's hidding the date. The date is 8 bytes, the difference is of -9 +1 is 8. He just tacked the date to the end of the EXE.<br>
<p>Steve Meier<br><a href=mailto:sdmeier@jcn1.com>sdmeier@jcn1.com</a><br><a href= > </a><br>
 
Hey Steve, the date should always be ten characters, no less. You can always insert the &quot;first run date&quot; into the the middle of the EXE by searching for a match with a string literal (with each character position preceded by CHR$(0) - UNICODE! ARRGH! I hate it!) and writing to that location.<br>
For instance, Da$ = &quot;XXXXXXXXXX&quot; in the code and search for ten X's separated by ASCII 0's. Do the reverse while writing to the EXE.<br>
<br>
Have a Bud on me, and congrats on the Tip-meister status!
 
i created a system (ocx) that copy protection your application ,it encrypt settings in the regristry ,if not the person mail the serialnumber its finished after 30 days<br>
<br>
Info : <A HREF="mailto:vbg.be@vbgroup.nl">vbg.be@vbgroup.nl</A><br>
<br>
Eric<br>
<br>
<p>Eric De Decker<br><a href=mailto:vbg.be@vbgroup.nl>vbg.be@vbgroup.nl</a><br><a href= Visual Basic Center</a><br>
 
MIB - Try they run a nice comission based scheme which our company uses.

Hope it helps.

[tt]'Very funny, Scotty... Now Beam down my clothes.'[/tt]
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top