|
Hello!
I am going to finalize my application what I created with vb.net. However I have faced with an intrique problem about creating and integrating an activation code method. I don't use any database but a XML file to store
DateInstalled and ActivationStatus values in this file as encrypted data because I am not able to overwrite a resource field in my resource file in runtime. Even I use encrypted data in XML file this file can be edited by a user.
Lets assume that one user had installed the app on 3/20/2007 and second user had installed the app. on 3/29/2007. If first user has destroyed the data in XML file, the second user can pass his own XML file to first user with a most recent application installation date. How could you solve such problem? What would be your best approach as method to solve activation integration for your application? Where would you safely store such imported information?
Any advice is appreciated.
Thank You!
What a curious mind needs to discover knowledge is noting else than a pin-hole.
|
|
|
|
|
Because your app is .NET, any code you write to protect it can be decompiled and removed. The big question is, why do you think you need to take it this far ? How many people are going to try to steal your app ?
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
I am not concerned if anyone steals my application. All I was doing is to force my brain to come up with a suitable solution. I know there is no way to protect the app with hundred percent but at least I make things more complex for 3rd parties. I better keep working on it.
Thanks Christian.
What a curious mind needs to discover knowledge is noting else than a pin-hole.
|
|
|
|
|
Hi,
Like you said, you can only make it more difficult, never impossible. Perhaps the simplest way to accomplish what you want, is building in more layers.
For example, you could add another xml file, with a nondescript name, and record the last access dates of all other files in the installation folder, upon installation.
At the moment your app checks for the date, you can cross reference it to the last access date of the xml file. If the combination isn't good, you know the user edited the xml file or copied the xml file from another installation. (On the other hand, using an xml file instead of say the registry, allows the user to simply uninstall the entire app and install it again. In any scenario, the xml files would all be recreated.)
You could also revert to confusion: name the tags you use for some other inconspicuous
object or setting that you are "checking".
Alternatively, or in combination, you could take the date you are recording now, take some other variable which value should be unique to this particular installation, or better even, the user's PC, and use them in some sort of formula, to create a code. Register the code somewhere else, and use it to retrieve the original installation date, and PC.
If you hadn't already thought of these yourself...
Good luck,
Johan
My advice is free, and you may get what you paid for.
|
|
|
|
|
I have the follow code in VB.NET 2005, i am trying to make it into a loop, is it possible, and if so, anyone fancy having a go at helping me at doing it, hints...etc?
The numbers of labels and text boxes goes from 1-10, so it will have to loop, then add 1 to the integer value, something like that!!! HELP!
CODE:
---
Priv Sub txtInput1_TextChanged(…) Handles txtInput1.TextChanged
If txtInput1.Text.ToLower = lblLetter1.Text Then
lblLetter1.ForeColor = R : intScoreAll += 1
Else
lblLetter1.ForeColor = W
End If
lblLetter1.BorderStyle = BorderStyle.None : txtInput1.Enabled = False
txtInput2.Enabled = True
lblLetter2.BorderStyle = BorderStyle.FixedSingle
txtInput2.Focus()
End Sub
---
|
|
|
|
|
You can use a foreach loop on the Controls collection and look for items by name or tag, or use dynamic type checking to work out which items are textboxes.
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
I have a text file with the AE character in it when I try to read it with File.ReadAllText it does not read the character (it just removes it). I have tried File.ReadAllBytes(PATH/FILENAME.txt).replace(chr(198),"AE") and a couple other Replace ideas and so far nothing has worked. The only method I have found that works is:
Bytes = File.ReadAllBytes("PATH/FILENAME.txt")
For i = 0 To Bytes.Length - 1
TextFile += Chr(Bytes(i))
Next
This is horribly inefficient but does work...
Any better ideas?
|
|
|
|
|
Use the overload of the ReadAllText method that takes an encoding to specify the encoding that was used to create the file. Example:
text = File.ReadAllText(path, Encoding.UTF8)
---
single minded; short sighted; long gone;
|
|
|
|
|
hello evryone!!
m workin on fingerprint matchin algos nd hav selected the minutiae based approach.
the image enhancement,thinning nd stuff is done however m stuck on the pattern matching thing.
my code works on the pixel co-ordinates and pixel orientation approach, wherein i am confused as to how do i match the pixel cordinates as there is always a displacement problem in the input and the template image , evenif they have the same orientation
i am workin on vb.net 2003
|
|
|
|
|
You can't compare absolute coordinates, as the images you are comparing may be offset, scaled and rotated against each other. Express the relations between the coordinates as vectors, so that you can easily scale and rotate them when comparing them.
---
single minded; short sighted; long gone;
|
|
|
|
|
Hello!
I have one string value e.g (32765) and I would like to know how I can covert it to a color.
Dim myColor as Color
myColor = my.resources.FormBaseColor ' that is a string
Thanks for bunches!
What a curious mind needs to discover knowledge is noting else than a pin-hole.
|
|
|
|
|
The real question is, how do you *expect* 32765 to convert to a color ? If you mean it's an RGB value, you can use int.TryParse to get a number, and bit masking to extract the three values, which you can then turn into a color. So, 32765 && 0xFF, 32765 && 0xFF00, and 32765 && 0xFF0000 will get your three byte values.
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
You can use the Color.FromArgb method to convert a number to a color. It expects a 32 bit value where there are eight bits each for alpha, red, green and blue.
If the value represents a color without an alpha value, you use FromArgb twice to set the alpha value. Example:
Dim c As Integer = &HFFFF00 'yellow<br />
Dim myColor As Color = Color.FromArgb(255, Color.FromArgb(c))
If your value represents a color in a different way, it may be simpler to extract the color components and create a color from that:
Dim myColor As Color = Color.FromArgb(red, green, blue)
---
single minded; short sighted; long gone;
|
|
|
|
|
Hello,
I know that there are many projects that show how to implement checking the md5 hash of a file in vb6 however I was not able to find any for vb.net can any one point me to the right direction ?
Thanks
Al968
Avast Antivirus-<url>http://www.avast.com<url>
|
|
|
|
|
Md5 is built into the System.Cryptography namespace. Therefore, no-one is going to write sample code to do it, the framework does it already.
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
Thank you for your responce, I didn't know it was built-in.
Thanks
Al968
Avast Antivirus-<url>http://www.avast.com<url>
|
|
|
|
|
I want to bind data in a Select Statement in a stored procedure in SQL Server 2005 to a GridView
in Visual Basic 2005.
I set the DataSourceID of the GridView to the Stored Procedure and in runtime Bind the Data with
DataBind Method.
But it dose not work.
Please help me.
|
|
|
|
|
It sounds like you have some misconceptions about how all this works. Post the code you're using to get the data and bind the grid and we'll see if we can straighten it out. Is this an ASP.NET app or Windows Forms?
You don't bind to a stored procedure. You call a stored procedure to return the records you want. The records end up in either a DataTable or some other bindable source. You then bind the grid to that record set.
Dave Kreskowiak
Microsoft MVP - Visual Basic
|
|
|
|
|
I wrote this code
<asp:gridview id="GridView1" runat="server" allowpaging="True" autogeneratecolumns="False"
="" backcolor="#CCCCCC" bordercolor="#999999" borderstyle="Solid" borderwidth="3px" cellpadding="4" cellspacing="2" forecolor="Black" datasourceid="SQLDS_Select_Project">
<footerstyle backcolor="#CCCCCC">
<columns>
<asp:boundfield datafield="Number" headertext="تعداد">
<asp:boundfield datafield="Model" headertext="مدل">
<asp:boundfield datafield="Heavy" headertext="سنگین">
<asp:boundfield datafield="Kind" headertext="نوع ماشین">
<asp:boundfield datafield="Number_M" headertext="تعداد فعال در پروژه">
<asp:boundfield datafield="Title" headertext="عنوان پروژه">
<asp:boundfield datafield="Row" headertext="ردیف" readonly="True">
<rowstyle backcolor="White">
<selectedrowstyle backcolor="#000099" font-bold="True" forecolor="White">
<pagerstyle backcolor="#CCCCCC" forecolor="Black" horizontalalign="Left">
<headerstyle backcolor="Black" font-bold="True" forecolor="White">
<asp:sqldatasource id="SQLDS_Select_Project" runat="server" connectionstring="<%$ ConnectionStrings:SamanMohitConnectionString %>"
selectcommand="Select_Project" selectcommandtype="StoredProcedure">
<selectparameters>
<asp:parameter defaultvalue="Farsi" name="F_Language" type="String">
and in .aspx.vb i write this code
Protected Sub Page_Load(Parameters)
GridView1.DataBind
End Sub
|
|
|
|
|
What code? This is HTML. There's nothing here that calls any kind of database.
Dave Kreskowiak
Microsoft MVP - Visual Basic
|
|
|
|
|
Hi,
I am have to use Sybase database in my appliction.
Is there any way to use it without installing ODBC Driver on each machine, I mean like is there any way to directly connect to Sybase by imporing a reference dll or something.
Thank you!
"Mess with the Best, Die like the rest"
|
|
|
|
|
Well, you could TRY to use the OleDb methods, but they're not going to support SyBase the best since they're kind of "generic". Other than that, you have no choice but to install the driver, or use a different database, like SQL Server or Access, that comes with the drivers already installed.
Dave Kreskowiak
Microsoft MVP - Visual Basic
|
|
|
|
|
If now OleDb wht other choice do i have, since i am using a IVR system that only deployes Sybase as their database.
Thank You!
"Mess with the Best, Die like the rest"
|
|
|
|
|
M. Nauman Yousuf wrote: since i am using a IVR system that only deployes Sybase as their database.
The only other choice you have is to install the drivers.
Dave Kreskowiak
Microsoft MVP - Visual Basic
|
|
|
|
|
I'm trying to create an application where i can browse the Active Directory OU folder structure. I need to select an OU and need the OU name for a next action in the application.
Any help is welcome.
Roland
|
|
|
|