Tein pelin johon tuli ikävä pieni bugi. Rekisteröintilomakkeen esiinnyttyä kuuden sekunnin päästä ilmaantuu jo toinen ikkuna, ja se avaakin REKISTERÖIDYN VERSION ilman käskyä. Kieli on VB. sen takia se täällä on. siis miten saan sen niin että se pysyy (toisella koneella jossa ei ole vb:tä) samalla tavalla kuin omallanikin koneella, ettei tapahdu tätä ikävää karkausta?
Olisiko sitä koodia? :)
Private Declare Function SetWindowPos& Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
Public LoginSucceeded As Boolean
Function XORCrypt(CryptData As String, CryptKey As String) As String
Dim XOR1 As Integer
Dim XOR2 As Integer
Dim RetVal As String
For ptr = 1 To Len(CryptData)
XOR1 = Asc(Mid(CryptData, ptr, 1))
XOR2 = Asc(Mid(CryptKey, ((ptr Mod Len(CryptKey)) + 1), 1))
RetVal = RetVal + Chr(XOR1 Xor XOR2)
Next
XORCrypt = RetVal
End Function
Private Sub cmdRegister_Click()
If RegisterCode = "[Sensuroitu]" Then
LoginSucceeded = True
MsgBox "Now Text Editor Advanced 1.0 is registered. Thanks for registering!", vbInformation, "Text Editor Advanced"
SaveChanges_Save
Me.Hide
Else
MsgBox "Your registration code is invalid", , "Register"
End If
End Sub
Sub SaveChanges_Save()
On Error Resume Next
MkDir App.Path + "\Register"
Open App.Path + "\Register\[Sensuroitu].cfg" For Output As #1
Print #1, XORCrypt(KelleRekisteröidään.Text, "[käännösavain on sensuroitu]")
Print #1, XORCrypt(RegisterCode.Text, "[käännösavain on sensuroitu]")
Close #1
End
End Sub
Private Sub Form_Load()
SetWindowPos frmSplash.hwnd, -1, 0, 0, 0, 0, 3
Dim UudelleenKryptaa2
Dim UudelleenKryptaa
Dim str As Variant
On Error Resume Next
MkDir App.Path + "\Register"
Open App.Path + "\Register\[Sensuroitu].cfg" For Input As #1
Line Input #1, str: KelleRekisteröidään.Text = str
Line Input #1, str: RegisterCode.Text = str
Close #1
UudelleenKryptaa2 = XORCrypt(KelleRekisteröidään.Text, "[käännösavain on sensuroitu]")
UudelleenKryptaa = XORCrypt(RegisterCode.Text, "[käännösavain on sensuroitu]")
KelleRekisteröidään.Text = UudelleenKryptaa2
RegisterCode.Text = UudelleenKryptaa
If RegisterCode.Text = "[Sensuroitu]" Then
Me.Hide
frmSplash.Show
frmSplash.Joo_Registered
Else
MsgBox "'[Sensuroitu].cfg' is damaged. You lost your registration.", vbCritical + vbOKOnly, "File is damaged"
Kill App.Path + "\Register\[Sensuroitu].cfg"
End
End If
Exit Sub
End SubAlotus on laitettu ainoastaan tähän formiin.
Sensuroin kohdat joista paljastuisi jotain tärkeää :)
Siis toisella koneella toimii erilailla? :O
Now Text Editor Advanced 1.0?
Aika mielenkiintonen nimi pelille.
joo löysin virheen splassissa oli timeri päällä.. Sori että vaivasin
Huom! XORin pystyy murtamaan suhteellisen helposti. En suosittele sen käyttöä. freevbcode.comista löytyy muistaakseni turvallisempiakin.
Xor on mahdoton murtaa, niin kauan kuin salausavain on tarpeeksi pitkä ja satunnainen.
niin, enhän minä hölmö ole. :) ei se tallenna tiedostoon rekisteröintikoodia PAITSI silloin kuin koodi on oikein... :P
Aihe on jo aika vanha, joten et voi enää vastata siihen.