Open source Windows 7 product key checker

Discussion in 'MDL Projects and Applications' started by Daz, Oct 15, 2009.

  1. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    This is a small project I thought I would share with everyone since as far as I know there are no examples or open source projects that show how to do this.

    I recommend using REALbasic 2007 Release 5 if you want to compile standalone executables, but be warned that the 2007 version is a little buggy and tends to crash a lot so make saves often. The 2010 (and up) versions are great but won't compile you standalone executables. However, if you are just planning to simply port the code over then use a newer edition.

    ** To paste in a key hold Ctrl and press V.

    Removed due to a DMCA complaint.
     
  2. Sabresite

    Sabresite MDL Member

    Joined:
    Nov 7, 2007
    Messages:
    210
    Likes Received:
    47
    Trophy Points:
    10
    Why the 2007 release instead of the newest 2009?
     
  3. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    The newest 2009 build won't compile you a standalone executable, although the 2009 build is much more stable.

    I'm sure there will be conversions of the code done in different languages soon enough, I don't mind if anyone wants to post the converted project here too! :p
     
  4. cyclops

    cyclops MDL Senior Member

    Joined:
    Sep 10, 2007
    Messages:
    299
    Likes Received:
    39
    Trophy Points:
    10
    #4 cyclops, Oct 15, 2009
    Last edited: Oct 15, 2009
    nice one daz nice tool, keep up the good work m8 +1rep

    p.s any chance we can get it so we can paste the key in, i have to type it
     
  5. Sabresite

    Sabresite MDL Member

    Joined:
    Nov 7, 2007
    Messages:
    210
    Likes Received:
    47
    Trophy Points:
    10
    I could convert it to vanilla C++, but I am not good at UI's, so it would be an ugly black dos window. The only language I can create good UIs with is .NET Framework. If anyone is interested, then I can port this to C#.
     
  6. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    I say go for it, any code sharing of this function I encourage as there are virtually no working examples that I know of found online. So even if done in DOS the code itself would be great to share :)
     
  7. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    #7 Daz, Oct 15, 2009
    Last edited: Oct 15, 2009
    (OP)
    @ cyclops

    Ctrl + V ;)

    I wasn't joking when I said this was a quick bare-bones project, it was just some test code that I had spare. I was going to add key checking to my loader application but with it locking the UI up (even while in a thread!) it rendered it useless. Everyone elses key checker seems to lock up a bit too so I guess it's to do with the declare itself taking ages to reply back with some content.
     
  8. Alphawaves

    Alphawaves Super Moderator/Developer Staff Member

    Joined:
    Aug 11, 2008
    Messages:
    6,183
    Likes Received:
    21,983
    Trophy Points:
    210
    Good one Daz, will this run in windows or is it for mac:)

    Sabresite that would be cool, ive recently started using vb 2008 - can it be converted to this.:)

    Alfa:);)
     
  9. cyclops

    cyclops MDL Senior Member

    Joined:
    Sep 10, 2007
    Messages:
    299
    Likes Received:
    39
    Trophy Points:
    10
    ta m8 :) :)
     
  10. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    @ Alfa
    As the declare itself is strictly Windows based then it's one that won't run on a Mac. This should be able to be converted to .NET without any problems :)
     
  11. Lich King

    Lich King MDL Addicted

    Joined:
    Sep 24, 2009
    Messages:
    500
    Likes Received:
    24
    Trophy Points:
    30
    thanks.. 'll check out MAK key :p
     
  12. PAYMYRENT

    PAYMYRENT MDL Developer

    Joined:
    Jul 28, 2009
    Messages:
    1,462
    Likes Received:
    420
    Trophy Points:
    60
    im interested in the c# version :D
     
  13. ruacop

    ruacop MDL Novice

    Joined:
    Jul 6, 2009
    Messages:
    10
    Likes Received:
    0
    Trophy Points:
    0
  14. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    #15 Daz, Oct 15, 2009
    Last edited by a moderator: Apr 20, 2017
    (OP)
    Interesting, I'm not sure if thats normal or not but based off data tests with other keys I guess it is. I don't have a MAK key to test with but the easiest way is to debug the line "Dim PID As String" and then look at the contents of the CoreData memoryblock, if you see the edition then it's just how my code pin points the position of text.

    Theres one minor fault in the source so I'm going to fix that and reupload a version. The fault is with the following:
    Code:
    Private Function ConfigPath() As String
      Dim OldVal As Integer
      //Disable path redirection for 64bit OS's
      Soft Declare Function Wow64DisableWow64FsRedirection Lib "Kernel32" (OldValue As Integer) As Integer
      If System.IsFunctionAvailable( "Wow64DisableWow64FsRedirection", "Kernel32" ) then
        Call Wow64DisableWow64FsRedirection(OldVal)
      End If
      Return SpecialFolder.System.AbsolutePath+"spp\tokens\pkeyconfig\pkeyconfig.xrm-ms"
      //Re-enable path redirection
      Soft Declare Function Wow64RevertWow64FsRedirection Lib "Kernel32" (OldValue As Integer) As Integer
      If System.IsFunctionAvailable( "Wow64RevertWow64FsRedirection", "Kernel32" ) Then
        Call Wow64RevertWow64FsRedirection(OldVal)
      End If
    End Function
    The revert function never gets called because we have already returned, the fixed code should look like this:
    Code:
    Private Function ConfigPath() As String
      Dim OldVal As Integer
      //Disable path redirection for 64bit OS's
      Soft Declare Function Wow64DisableWow64FsRedirection Lib "Kernel32" (OldValue As Integer) As Integer
      If System.IsFunctionAvailable( "Wow64DisableWow64FsRedirection", "Kernel32" ) then
        Call Wow64DisableWow64FsRedirection(OldVal) //64bit Fix
      End If
      Dim S As String = SpecialFolder.System.AbsolutePath+"spp\tokens\pkeyconfig\pkeyconfig.xrm-ms"
      //Re-enable path redirection
      Soft Declare Function Wow64RevertWow64FsRedirection Lib "Kernel32" (OldValue As Integer) As Integer
      If System.IsFunctionAvailable( "Wow64RevertWow64FsRedirection", "Kernel32" ) Then
        Call Wow64RevertWow64FsRedirection(OldVal) //64bit path handler
      End If
      Return S
    End Function
     
  15. pkaji123

    pkaji123 MDL Addicted

    Joined:
    Aug 22, 2009
    Messages:
    763
    Likes Received:
    233
    Trophy Points:
    30
    Program For XP

    A Program Like This For XP Would be Much Appreciated!!!!!
    Thanks a lot 4 ur Hard work!!!!
    Keep up the work Guys>>>
     
  16. SCBrigth

    SCBrigth MDL Senior Member

    Joined:
    May 9, 2009
    Messages:
    487
    Likes Received:
    71
    Trophy Points:
    10
    Hi Daz, this RealBasic seems to be amazing and as VB developer I'm interested to learn it, your project will be a good start point.

    But I could not found where download it:(, I just found trials. Could you direct me to any place that I can download?
     
  17. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    #18 Daz, Oct 15, 2009
    Last edited by a moderator: Feb 27, 2013
    (OP)
    The above link should list a few versions, the older 2007 version being the best to compile a single executable but it was a pretty buggy build and would randomly crash every now and then so always make saves.

    If you go for a newer version then I could probably work on doing a public cr4ck as I have cr4cked the application myself.
     
  18. pkaji123

    pkaji123 MDL Addicted

    Joined:
    Aug 22, 2009
    Messages:
    763
    Likes Received:
    233
    Trophy Points:
    30
    Hi Daz What About this.......
    Atleast Code...
     
  19. Daz

    Daz MDL Developer / Admin Staff Member

    Joined:
    Jul 31, 2009
    Messages:
    9,551
    Likes Received:
    67,118
    Trophy Points:
    300
    Hey pkaji123,

    I'm not sure how to do it on Windows XP, I think it uses pidgen.dll rather than pidgenx.dll. I will look into it when I'm next on my XP partition :)