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

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

Ветеран


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

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


Цитата mariolast:
(можно ли это поправить не знаю) »
Можно, используйте конвертирование strArray[i] := DosToAnsi(strArray[i]), чуть поправил ваш пример:
читать дальше »

Код: Выделить весь код
#include "ConvertString.iss"

function GetMACAddress(): string;
var
  ResultCode: Integer;
  strArray: TArrayOfString;
  Temp: string;
  strMAC: string;
  strLen: integer;
  i: integer;
begin
  Result := '';
  Exec('cmd.exe', '/c ipconfig /all >"' + ExpandConstant('{tmp}\adapter.info') + '"', '', SW_HIDE,
     ewWaitUntilTerminated, ResultCode);

  LoadStringsFromFile(ExpandConstant('{tmp}\adapter.info'), strArray);
  for i := 0 to GetArrayLength(strArray)-1 do
    if Length(strArray[i]) > 16 then
      begin
        strArray[i] := DosToAnsi(strArray[i]);
        strLen := Length(strArray[i]);
        MsgBox(strArray[i], mbInformation, MB_OK);
        if (CompareStr('-', strArray[i][strLen-2] ) = 0) and
           (CompareStr('-', strArray[i][strLen-5] ) = 0) and
           (CompareStr('-', strArray[i][strLen-8] ) = 0) and
           (CompareStr('-', strArray[i][strLen-11]) = 0) and
           (CompareStr('-', strArray[i][strLen-14]) = 0) and
           (Pos('VMware', strArray[i]) = 0) and
           (Pos('Hamachi', strArray[i]) = 0) then
          Result := Result + #10#13 + Copy(strArray[i], strLen-16, 17);
      end;
end;

Сам скрипт ConvertString.iss - здесь

Цитата mariolast:
Я для этого использую библиотеку IPUtils.dll »
А вы думаете как она проверяет IP? Смысл один и тот же, только не нужно доп. библиотек.

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:50, 01-04-2011 | #1208