Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.05;
Скачать: CL | DM;

Вниз

Как можно программно сменить текущий IP-адрес в локалке?   Найти похожие ветки 

 
Rentgen ©   (2005-10-25 12:44) [0]

Всем привет!
Как можно программно сменить текущий IP-адрес в локалке?


 
Rentgen ©   (2005-10-25 13:41) [1]

Нашел
IP Helper.
Но в MSDN сказанно, что он для C++
А неподскажите аналоги для Delphi?


 
Rentgen ©   (2005-10-25 14:57) [2]

Вообщем нашел 100% ответ:
iphlpapi.dll

НО(!)
Кто нить скажет как работать с этими функциями?
Может юнит есть?


 
Rentgen ©   (2005-10-25 15:40) [3]

Спасибо мастерам за (НЕ)помощь.
Держите функцию собратья по несчастью :)   :

function ChangeIp(ConnectionName,Ip,Netmask,Gateway:string):boolean;

   function ExecAndWait(FileName:String; Visibility:integer):integer;
   var
     zAppName:array[0..512] of char;
     zCurDir:array[0..255] of char;
     WorkDir:String;
     StartupInfo:TStartupInfo;
     ProcessInfo:TProcessInformation;
     Resultado: DWord;
   begin
     StrPCopy(zAppName,FileName);
     GetDir(0,WorkDir);
     StrPCopy(zCurDir,WorkDir);
     FillChar(StartupInfo,Sizeof(StartupInfo),#0);
     StartupInfo.cb := Sizeof(StartupInfo);

     StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
     StartupInfo.wShowWindow := Visibility;
     if not CreateProcess(nil,
       zAppName,                      { pointer to command line string }
       nil,                           { pointer to process security attributes}
       nil,                           { pointer to thread security attributes}
       false,                         { handle inheritance flag }
       CREATE_NEW_CONSOLE or          { creation flags }
       NORMAL_PRIORITY_CLASS,
       nil,                           { pointer to new environment block }
       nil,                           { pointer to current directory name }
       StartupInfo,                   { pointer to STARTUPINFO }
       ProcessInfo) then Result := -1 { pointer to PROCESS_INF }

     else begin
       WaitforSingleObject(ProcessInfo.hProcess,INFINITE);
       GetExitCodeProcess(ProcessInfo.hProcess,Resultado);
       Result := Resultado;
     end;
   end;

 begin
   Result:=( ExecAndWait( "netsh interface ip set address ""+
                          ConnectionName+"" "+
                         " static "+Ip+ " "+NetMask +" "+GateWay+" 1",sw_hide)=0 );
 end;


 
Rentgen ©   (2005-10-25 15:41) [4]

вызывать так:

if NOT ChangeIp( "Подключение по локальной сети",
                  "192.168.0.188",
                  "255.255.255.0",
                  "192.168.10.90") then showmessage(Невозможно сменить IP")
                                   else showmessage("IP изменен успешно!");


 
Помогите пожалуйста?   (2005-10-25 18:33) [5]

а  как рабочию группу и описание?


 
Arazel ©   (2005-10-29 15:58) [6]

В натуре как  изменить?



Страницы: 1 вся ветка

Текущий архив: 2006.02.05;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.01 c
6-1130398948
Mikhail
2005-10-27 11:42
2006.02.05
Indy(IdHTTP)


4-1132131975
john_mag
2005-11-16 12:06
2006.02.05
Delphi, Word и MSPVIEW.EXE


2-1137577282
Andrey235
2006-01-18 12:41
2006.02.05
Как програмно создать компоненту на форме?


1-1136319103
Yozch1
2006-01-03 23:11
2006.02.05
Application data


1-1136712811
BiggieSmalls
2006-01-08 12:33
2006.02.05
Генератор случайных букв :)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский