![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Есть функция
vk.groups_leave(edit1.text); И поидее vk.groups_leave(gid); Gid несет функцию ид группы. Edit1=ввод группы Как выйти из всех групп которые есть?и как добавить исключения? Код:
procedure TForm3.Button2Click(Sender: TObject); var i: Integer; begin for i := 1 to 100 do vk.groups_leave(IntToStr(i)); end; Так не получается... |
|
#2
|
|||
|
|||
|
наверно надо список id-ов, в которых состоит сначала получить
|
|
#3
|
|||
|
|||
|
Код:
{
массив1 = все группы
массив2 = список исключений
for i=0;i<массив1.length;i++
if этонеисключение(массив1[i])
groups_leave(массив1[i]);
}
boolean этонеисключение(String test)
{
for i=0;i<массив2.length;i++
if массив2[i]==test return false
return true;
} ну я щас перешел с делфи на java поэтому описал ближе к джаве ... lmikle: Еще бы тегами научился пользоваться, совсем молодец бы был... (вообщем я теги ваши вставляю ... просто здесь код будра вышел ... русский англиский ... вот я и не вставил это как код ... это как структура приближенная к коду ...) но суть постарался обобщить думаю будет понятно ... если нет напиши подробнее опишу ... поидеи надо вам копать в эту сторону как я понял ... если речь идет о контакте ... http://vk.com/developers.php?p=groups.get Последний раз редактировалось caHek-2x, 16.01.2013 в 04:57. |
| Этот пользователь сказал Спасибо caHek-2x за это полезное сообщение: | ||
OTVET (17.01.2013)
| ||
|
#4
|
|||
|
|||
|
Можно пожалуйста более подробнее с примерами.
Функция выхода из группы с помощью вода ид. Код:
function groups_leave(gid:string):boolean; Функция для получения групп. Код:
function groups_get(uid, extended, filter, fields, offset, count:string):boolean; Как мне выйти из всех групп кроме введенных? |
|
#5
|
|||
|
|||
|
я не могу понять groups_get куда что возвращает ... потому что её возвращаемое значение булевое. ..
это как я понял ты эти ф-ции с нета взял ... кинь ссылку мож там инфу подробнее найду ... |
|
#6
|
|||
|
|||
|
http://www.vans-soft.ru/2012/10/beta...nt-delphi.html
Вот компонент. |
|
#7
|
|||
|
|||
|
минут через 20 загляну посмотрю ...
|
|
#8
|
|||
|
|||
|
я щас код набросал себе чтобы протестировать компонент ... но что то не логинится ... у тебя авторизацию проходит ?
Код:
If vk.OnLogin then showmessage('good'); Последний раз редактировалось lmikle, 16.01.2013 в 02:40. |
|
#9
|
|||
|
|||
|
ну суть у тебя будет как в примере ...
Код:
objlist.Text:=vk.Response.Text; //в vk.Response находится ответ сервера после выполнения функций
while objlist.Count>0 do begin //цикл будет идти до тех пор пока не пробежит по всему списку id
id:=Pars('<uid>', objlist[0], '</uid>'); //парсим id
if Length(id)>5 then vk.friends_add(id, ''); //если это id значит добавляем его
objlist.Delete(0);
end;если разберусь че не логиниться и как авторизоваться .. то набросаю готовый пример ... |
| Этот пользователь сказал Спасибо caHek-2x за это полезное сообщение: | ||
OTVET (17.01.2013)
| ||
|
#10
|
|||
|
|||
|
авторизация работает только если будут файлы
ssleay32.dll и libeay32.dll Скинь пожалуйста готовый пример. |
|
#11
|
|||
|
|||
|
Цитата:
Код:
vk:=TVKClient.Create(nil); //создаём компонент
vk.Format:=XML; //настраиваем формат возвращаемых данных (JSON или XML)
vk.Login:=sedit1.text;
vk.Password:=sedit2.text;
vk.OnLogin; //вызываем функцию авторизации
sMemo1.Lines.Add('['+TimeToStr(Now)+']: Авторизируемся ВКонтакте...');
vk.friends_getRequests('', '', '', '', '', ''); //вызываем функцию которая получает заявки в друзья
if vk.onlogin then sMemo1.Lines.Add('['+TimeToStr(Now)+']: Авторизация прошла успешно!')
else
sMemo1.Lines.Add('['+TimeToStr(Now)+']: Авторизация не удалась!'); |
| Этот пользователь сказал Спасибо Praimmax за это полезное сообщение: | ||
OTVET (17.01.2013)
| ||
|
#12
|
|||
|
|||
|
да не авторизовывалось из за этих файлов ...
Код:
procedure TForm5.Button1Click(Sender: TObject);
var
I: Integer;
gg: String;
j: Integer;
iskl: boolean;
vk: TVKClient;
templist: TStringList;
grouplist: TStringList;
iskluchenie: TStringList;
begin
vk := TVKClient.Create(nil); // создаём компонент
vk.Format := XML; // настраиваем формат возвращаемых данных (JSON или XML)
vk.Login := 'логин';
vk.Password := 'пароль';
If vk.OnLogin then//авторизовываемся и если авторизация прошла то ...
begin
showmessage('авторизовались');
templist := TStringList.Create;
grouplist := TStringList.Create;
iskluchenie := TStringList.Create;
vk.groups_get('', '', '', '', '', ''); // читаем все группы
//добавляем иды групп исключений ...
//добавил для примера http://vk.com/club27019565
//и http://vk.com/club28546855
//можешь посчитывать из мемо или еще откуда .. .если не поймешь короче напиши обьясню ...
iskluchenie.Add('27019565');
iskluchenie.Add('28546855');
templist.Text := vk.Response.Text; // в vk.Response находится ответ сервера после выполнения функций запроса всех групп
//==============================
//в этом блоке ответ с сервера обрабатываем занося в список grouplist только иды без лишних тегов ...
for I := 0 to templist.Count - 1 do
begin
if (Pos('<gid>', templist[i]) > 0) then
begin
gg := templist[i];
Delete(gg, Pos('<gid>', gg), 5);
Delete(gg, Pos('</gid>', gg), 6);
Delete(gg, Pos(' ', gg), 1);
grouplist.Add(gg);
//это открытие в браузере всех групп ... т.к. тестил на себе открыл чтобы потом опять вступить ...
ShellExecute(handle, 'open', PWideChar('http://vk.com/club' + gg), nil, nil, SW_SHOW)
end;
end;
//==============================
ShowMessage('После нажатия окей ... все группы удалять ...');//вместо этого можно диалог с вопросом поставить и тд ... сам придумаешь или спросишь если что. ..
//==============================
//этот блок выйдит из всех групп что хранятся в grouplist ... но проверив перед выходом не входит ли группа в список исключений ...
for I := 0 to grouplist.Count - 1 do
begin
iskl := false;
//вот блок проверки исключений ...
for j := 0 to iskluchenie.Count - 1 do
if grouplist[i] = iskluchenie[j] then
begin
iskl := true;
end;
if iskl = false then
begin
vk.groups_leave(grouplist[i]);
end;
end;
//==============================
//выводим список идов всех групп в мемо ...
Memo1.Text := grouplist.Text;
end;
templist.Free;
grouplist.Free;
vk.Free;
end;ну както так ... если что не понятно спрашивай ... на себе протестил ... все норм .. .) |
|
#13
|
|||
|
|||
|
Цитата:
ты в своем коде два раза авторизовываешься ... |
| Этот пользователь сказал Спасибо caHek-2x за это полезное сообщение: | ||
Praimmax (16.01.2013)
| ||
|
#14
|
|||
|
|||
|
Почему это?
|
|
#15
|
|||
|
|||
|
Сенёк,есть скайп или аська?нужно задать несколько вопросов,тут долго....
|