Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.08.2009, 21:48   #11
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Просто нужно помнить что теперь char занимает 2 байта и один элемент строки string[i] также 2 байта, т.е. то что раньше было "Wide" - теперь по умолчанию. Если нужны однобайтные - то есть AnsiString и AnsiChar.

Это информация в общем, а конкретно в вашем случае я не вникал в чем ошибка.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 04.08.2009, 22:29   #12
s.Creator
Форумчанин
 
Регистрация: 28.09.2008
Сообщений: 344
По умолчанию

а может так?
Код:
proxyserver := WideCharToString(Buffer4^);
Edit5.Text:=proxyserver;
s.Creator вне форума Ответить с цитированием
Старый 06.08.2009, 14:01   #13
Inqizitor
Новичок
Джуниор
 
Регистрация: 04.08.2009
Сообщений: 6
По умолчанию

Цитата:
Сообщение от s.Creator Посмотреть сообщение
а может так?
Код:
proxyserver := WideCharToString(Buffer4^);
Edit5.Text:=proxyserver;
Вот решал проблему - код рабочий:

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, wininet, StdCtrls;

type
  INTERNETPROXYINFO = record
    dwAccessType: DWORD;
    lpszProxy: PAnsiChar;
    lpszProxyBypass: PAnsiChar;
  end;

  PInetProxyInfo = ^INTERNETPROXYINFO;

  TForm1 = class(TForm)
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure GetProxyData(var ProxyEnabled: boolean; var ProxyServer: ansistring; var ProxyPort: integer);
var
  ProxyInfo: PInetProxyInfo;
  Len: LongWord;
  i, j: integer;
begin
  Len := 4096;
  ProxyEnabled := false;
  GetMem(ProxyInfo, Len);
  try
    if InternetQueryOptionA(nil, INTERNET_OPTION_PROXY, ProxyInfo, Len)
    then
      if ProxyInfo^.dwAccessType = INTERNET_OPEN_TYPE_PROXY then
      begin
        ProxyEnabled:= True;
        ProxyServer := ProxyInfo^.lpszProxy;
        //showmessage('!');
      end
  finally
    FreeMem(ProxyInfo);
  end;

  if ProxyEnabled and (ProxyServer <> '') then
  begin
    i := Pos('http=', ProxyServer);
    if (i > 0) then
    begin
      Delete(ProxyServer, 1, i+5);
      j := Pos(';', ProxyServer);
      if (j > 0) then
        ProxyServer := Copy(ProxyServer, 1, j-1);
    end;
    i := Pos(':', ProxyServer);
    if (i > 0) then
    begin
      ProxyPort := StrToIntDef(Copy(ProxyServer, i+1, Length(ProxyServer)-i), 0);
      ProxyServer := Copy(ProxyServer, 1, i-1)
    end
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
pren: boolean;
s: ansistring;
p: integer;
begin
GetProxyData(pren, s, p);
edit1.Text:=(s+':'+inttostr(p));
end;

end.
Спасибо за ценные идеи
Inqizitor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ПОМОГИТЕ РЕШИТЬ ПРОБЛЕМУ !!!!!!!!!!!! ЛиЛу Помощь студентам 5 29.12.2008 15:36
Помогите решить проблему nismo Microsoft Office Excel 7 12.09.2008 08:59
помогите решить проблему 1234 Общие вопросы Delphi 2 04.07.2008 11:52
помогите решить проблему ... alexey7 Microsoft Office Excel 2 16.10.2007 13:25