Search This Blog

Tuesday, July 23, 2013

How to generate Solman Key (without having Solman Server)

You might want to install SAP ECC 5 or SAP ECC 6 and been asking SolmanKey. What if you don't have Solman Server ? Then how would you generate solman key ? There are 2 ways (if you don't have Solman Server to generate solman key) :

1. Ask your friend which have Solman Server to generate it.
2. Use this simple script (VB Script) to generate it.

-------------------------------


''''''''''''''''''''''''''''''''''''''
'   Solution Manager Key Generator   '
'Save to SolManKeyGen.vbs and execute'
'                                    '
''''''''''''''''''''''''''''''''''''''
'-------------------------------------------------------
Dim SIDs, SNs, SERVs, msg, ENDs, KEYs
msg="System ID (3 chr.)"
SIDs=InputBox(msg,"Solution Manager Key Generator")
msg="System Number (2 dig.)"
SNs=InputBox(msg,"Solution Manager Key Generator")
msg="Server Name (max. 15 chr.)"
SERVs=InputBox(msg,"Solution Manager Key Generator")
KEYs=SolManKeyGen(SIDs, SNs, SERVs)
msg="Solution Manager Key"
ENDs=InputBox(msg,"Solution Manager Key Generator",KEYs)
'-------------------------------------------------------
Function SolManKeyGen(SIDst, SNst, SERVst)
 Dim SIDSNhex(5)
 Dim SERVhex(15)
 Dim reshex(5)
 SIDSNstr = UCase(SIDst) + UCase(SNst)
 SERVstr  = UCase(SERVst)
 For arrcnt = 1 To 5
  SIDSNhex(arrcnt) = Asc(Mid(SIDSNstr, arrcnt, 1))
 Next
 For arrcnt = 1 To Len(SERVstr)
  SERVhex(arrcnt) = Asc(Mid(SERVstr, arrcnt, 1))
 Next
 For arrcnt = Len(SERVstr) + 1 To 15
  SERVhex(arrcnt) = 0
 Next
 If (Len(SERVstr) > 0) Then
  If (Len(SERVstr) < 5) Then
   For arrcnt = Len(SERVstr) + 1 To 5
    SERVhex(arrcnt) = Asc(" ")
   Next
  End If
 End If
 If (Len(SERVstr) > 5) Then
  If (Len(SERVstr) < 10) Then
   For arrcnt = Len(SERVstr) + 1 To 10
    SERVhex(arrcnt) = Asc(" ")
   Next
  End If
 End If
 If (Len(SERVstr) > 10) Then
  If (Len(SERVstr) < 15) Then
   For arrcnt = Len(SERVstr) + 1 To 15
    SERVhex(arrcnt) = Asc(" ")
   Next
  End If
 End If
 For arrcnt = 1 To 5
  reshex(arrcnt) = ((((0 Xor SIDSNhex(arrcnt)) Xor SERVhex(arrcnt)) Xor SERVhex(arrcnt + 5)) Xor SERVhex(arrcnt + 10))
 Next
 reshex(1) = reshex(1) Xor 84  Xor 0
 reshex(2) = reshex(2) Xor 131 Xor 11
 reshex(3) = reshex(3) Xor 194 Xor 46
 reshex(4) = reshex(4) Xor 52  Xor 105
 reshex(5) = reshex(5) Xor 119 Xor 188
 hexstr = "0123456789ABCDEF"
 resstr = ""
 For arrcnt = 1 To 5
  hihex = reshex(arrcnt) \ 16
  lohex = reshex(arrcnt) Mod 16
  resstr = resstr + Mid(hexstr, hihex + 1, 1) + Mid(hexstr, lohex + 1, 1)
 Next
 SolManKeyGen = resstr
End Function



-------------------------------

Copy this script to your Windows PC and save it as SolManKeyGen.vbs and then execute it... Now you have SOLMAN key.

No comments:

Post a Comment