Program Crashes at startup

We had a test product with some license features - I deleted the license features and changed the name of the product since it was originally set up as a test product. I then tried to open my program and the activation dialog appeared I click on Activate product and the dialog went away and program crashed. So I attempted to reopen and it crashes immediately.

I created a new product and downloaded the .dat file and put it in my folder with all program files changed the GUID and rebuilt my program - when I attempt to open it crashes immediately. What causes this? Is this normal if I make changes to a product (Rename / Delete License Features)? And why does the new product not work after I did all the steps?

I need help I suppose to deliver my program to a client this morning but....... I am clueless to what I did wrong

ThanksJosh

Hey Josh,

GetFeatureValue, when no "default value" is provided, causes a "TurboActivateException" of "Failed to get feature value. The feature doesn't exist.".

The way to prevent this is to either handle cases where you delete feature values that you actually use in your app, or pass in default feature values to the "GetFeatureValue()" function.

Does that make sense?

Sam,

Thanks for you reply, and I am sure this makes sense for someone with coding experience but for me no.....

Still not sure because my second new product I had no features and still crashes.... So if I use License Features this is passed to the program by the .dat file? All I want is to be able to add some identifiers to each license code so I am not dependent on just an email address. And when I added these as License features I had no idea that this would cause this problem. Is there any other solution to add to each license file (Customer Name, Address, Phone #, Comments) without this passing to program. These could change like a moving target if I wanted to add additional information?

This is not as easy of a License Program as I thought if I have to depend on coding to my program......

Josh

What crashes are you getting? Copy & paste the full error.

Sam,

I had someone resolve the problem. But what I want to clarify is how can I add to the license record only and not really pass this to the program. What we want to do is add a Client Record to each of our license records. Right now all we have to go by is an email address. Is there a way to add such records so when we pull up a license we can see addtional information such as but not limited to NameAddressCompany NameAdditional CommentsEtc...Etc...Etc....

If so can you tell what the correct steps are to get this added? And if we need to change or delete will this have an affect on our clients that are using our program? The last thing I want is them crashing like we did this morning because we changed or deleted something that we did not realize was now part of the license.

Thank youJosh

A crash will happen only if both of these 2 conditions are met:

  1. You use the feature value in your program.
  2. You (or your programmers) don't catch the exception GetFeatureValues() throws when the feature value is not present OR your don't specify a default value for the feature value (with a default value no exception is thrown).

But you're right, if you didn't program your app then this can be confusing. We will be adding a warning to the delete feature value screen to make it absolutely clear what can happen if you delete a feature value that you're actually using in your programs.

Thanks Sam,

I have a question if I include license feature for my product. I want to add the following

NameCompany NameDateComments

Would it be best to do this as strings? And is the correct way to add these types of records to a license?

Josh

Yes, you'd add them as string. Right now all feature values are embedded in the license when a user activates. This won't be the case in about 2 weeks (we'll give you the option have having the feature embedded in the license or just for your companies records only).

I think that will be a great feature and I appreciate your reply and look forward to this being implemented.