Вопрос таков; Есть код: Code: for i:= 0 to 50 do idhttp1.get('mysite.com'); Как сделать чтобы при каждом соединении брались прокси из файла?
Code: ... var f:Text; i:integer; proxy:string; begin assign(f, 'proxy.txt'); reset(f); for i:= 0 to 50 do begin readln(f, proxy); idhttp1.ProxyParams.ProxyServer := copy(proxy, 1, pos(':', proxy)-1); idhttp1.ProxyParams.ProxyPort := StrToInt(copy(proxy, pos(':', proxy), length(proxy)-pos(':', proxy))); idhttp1.get('mysite.com'); if eof(f) then reset(f); end; end; Приблизительно так, если есть ошибки - сорри, писал "на коленке".
Замени на File. Но этот код будет брать только один прокси из файла. Оптимальнее будет работать с TStritngList.
shadowrun, почему оптимальнее использовать TStritngList? если не в курсе как работает ReadLn, то не утверждай, что из файла будет читаться только первая строка Code: for i:= 0 to 50 do begin readln(f, proxy); ........ if eof(f) then reset(f); end; такой цикл при каждой новой итерации будет читать новую строку и, при достижении конца файла, чтение начнется с первой строчки
пфф.... и где в моем коде ты увидел "велосипедописание"? или уже приемы последовательного чтения файла - изобретение велосипеда?
Да, это прием но на более низком уровне, который тут не требуеться, помимо этого тут не проверяеться есть ли такой файл в системе, stringList делает это и есче много других вещей, вообще сколько кода вы готовы написать ради чтения файла зависит лишь от свободного времени и его ценности.
то есть, вы хотите сказать, что если в TStringList попытаться загрузить несуществующий файл все обойдется? может я конечно и не прав, так как среды под рукой нет, но TStringList выкидывает точно такой же Exception, как и assign/assignfile
mironich, TStringList ну никак не проверяет существование файла, а лишь генерирует exception при отсутсвии такового, и велосипедами никто не занимается, в TStringList есть конечно плюшки, но они нах не нужны, когда нужно просто построчно читать из файла, особенно если файл весомого размера
А что он должен делать при отсутствии? Правильно возбуждать исключение. Для этого TstringStream есть, ибо при файле весомого размера вышеуказанный способ тоже зависнет.
ахах... вот ты шутник, на 18 гб файле точно не виснет, так как проверено, и что-то мне кажется что и на файлах в десятки раз больше ничего не случится. TStringStream справится с таким объемом без проблем?
TStringStream предоставляет последовательный доступ к информации, хранящейся в обычной строке, так что хз на счет больших объемов
Задача такова, нужно проксифицировать комп (написать аналог proxifier, freecap и подобных), ЯП - делфи, можно ли сделать посредствами инди? Если нет, то подскажите в какую сторону копать. (сорцы freecap'a для меня слишком сложные, я думаю что можно как то проще все это организовать)
Слишком широко, по-конкретнее что нибудь предложишь? Может там библиотека какая есть или даже компонент...