Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 10
Благодарности: 1

Профиль | Отправить PM | Цитировать


Опять по той же задаче пишу... Пытался разобраться, но из-за плохих знаний ничего не получается.
Смотрел пример, но как реализовать до конца не понял



Вот такое пытался писать..

Код: Выделить весь код
Section
SetOutPath "$INSTDIR"
;нужен поиск по файлу 1.cfg на предмет наличия записи "aaaaaaaaaaaaaa.*=$INSTDIR\xxx\yyy". Если запись есть, ничего делать не нужно.
StrCpy $0 0
  loop:
  ReadINIStr $1 "$INSTDIR\1.cfg" "main" "aaaaaaaaaaaaaa" 
  StrCmp $1 "" Done
  StrCmp $1 "xxx\yyy" 0 +3
  StrCpy $0 1
  Goto Done
  IntOp $0 $0 + 1
  Goto Loop
 Done:
  StrCmp $0 1 Next
  ; если записи нет, то нужно ее вставить "aaaaaaaaaaaaaa.*=$INSTDIR\xxx\yyy", где * - порядковый номер. 
GetFullPathName $6 ..
${FileReadFromEnd} "$INSTDIR\1.cfg" "Find" ;читает строку за строкой? и записывает в $9?
WriteINIStr $INSTDIR\1.cfg main "aaaaaaaaaaaaaa.$3" "$6\xxx\yyy"
 Next:
SectionEnd
 
Function Find
  StrCpy $2 $9 14 ;Эту строку нужно обрезать до 14 первых символов (SimObjectPaths)
  ${if} $2 == "aaaaaaaaaaaaaa"
  Intop $3 $3 + 1
  ${endif}
FunctionEnd

Отправлено: 12:00, 13-01-2012 | #2211