| | Victor_VG 
 
  
 Tracker Mod
 | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору FanIT
 
 я же вам сразу сказал что параметр USERNAME не может быть пустым.
 
 Цитата:
 | ShowInstDetails show OutFile GetUserSID-Test.exe
 Caption "GetUserSID"
 
 !define GetUserSID "!insertmacro CallGetUserSID"
 !macro CallGetUserSID USERNAME SID NAME
 System::Store S
 StrCpy $0 "${USERNAME}"
 StrCpy ${NAME} $0
 StrCmp $0 "" +2
 ReadEnvStr $0 USERNAME
 System::Call "*(&t1024)i.r1"
 System::Call "advapi32::LookupAccountName(tn,tr0,ir1,*i1024,tn,*i1024,*in)i.r0"
 IntCmp $0 1 0 +2 +2
 System::Call "advapi32::ConvertSidToStringSid(ir1,*t.s)"
 IntCmp $0 1 +2 0 0
 Push error
 System::Free $1
 System::Store L
 Pop ${SID}
 !macroend
 
 Section
 ${GetUserSID} "" $R5 $R2
 MessageBox MB_ICONINFORMATION|MB_OK "User is: $R2 $\nSID is: $R5" IDOK
 SetAutoClose true
 SectionEnd
 | 
 я тут лишнее прибрал, ну и поправил ошибки в коде. Так работает, попробуйте найти и объяснить нам свои ошибки.
 
 P.S.
 
 MKN - не подсказывай, FanIT надо понять как это работает, тогда эти знания станут его, а иначе вся работа насмарку...
 
 
 | ---------- Жив курилка! (Р. Ролан, "Кола Брюньон")
 Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti
 | 
 |  | Всего записей: 35358 | Зарегистр. 31-07-2002 | Отправлено:  01:34 30-05-2014  | Исправлено: Victor_VG,   02:30 30-05-2014
 | 
 |