Q&A

  • 레지스트리 키값을 변경하는 방법과 네트워크드라이브 정보 변경하는 방법좀 알려주세요
저희회사가 이번에 ISP업체를 변경합니다.

그래서 프로그램하다가 문의 사항이 있어서 고수님들께 도움을 바랍니다.
1.레지스트리에서 키값을 어떻게 변경하죠?
   HKEY_CURRENT_USER\Printers\Test라고할때..
   HKEY_CURRENT_USER\Printers\HP 이렇게요...

2. 네트워크 드라이브 정보를 읽어서 수정을 하려고 하는데요
   네트워크 드라이브 정보 수정하는 방법좀 알려주세요...

미리 감사드립니다.
2  COMMENTS
  • Profile
    방석출 2006.12.28 20:07
    아래의 구문처럼 저희는 네트워크 드라이브에서 IP를 변경하는 모듈이었는데..
    모듈은 맞았네요

    다만 리부팅을 해야 적용되는 사실을 이제서야 알았습니다.^^
      
    // 네트워크 드라이브 IP변경
      r98Read := TRegistry.Create;
      with r98Read do
      begin
        RootKey := HKEY_CURRENT_USER;
        LazyWrite := false;
        if OpenKey('\Network',false) THEN
        begin
          List := TStringList.Create;
          GetKeyNames(List);

          for i := 0 to List.Count-1 do
          begin
            sRvalue := trim(List.Strings[i]);

            OpenKey('\Network\'+ sRvalue,True);
            sIPAddress := Trim(ReadString('RemotePath'));
            sCurrentIP := copy(sIPAddress,3,Length(sIPAddress)-2);
            sCurrentIP := copy(sCurrentIP,1,pos('\',sCurrentIP)-1);
            // 일치되는 아이피가 있으면 변경
            For j:=1 to 384 do
            begin
              sTemp := aIpAddress[j];
              sChkIP := Copy(sTemp, 1, Pos(';', sTemp) - 1);
              IF sCurrentIP = sChkIp THEN
              BEGIN
                //IP
                sTemp := Copy(sTemp, Pos(';', sTemp) + 1, Length(sTemp)-Length(sChkIP)-1);
                sChkIP := Copy(sTemp, 1, Pos(';', sTemp) - 1);
                WriteString('RemotePath',StringReplace(sIPAddress,sCurrentIP,sChkIP,[rfReplaceAll]));

                sChkIP := '';
                break;
              END;
            end;
          end;
        end;

        CloseKey;
        free;
      end;

  • Profile
    방석출 2006.12.28 18:55
    movekey를 이용하면 되는군요...^^
    movekey('\Printers\Connections\Test','\Printers\Connections\HP',true);

    네트워크드라이브 정보 수정하는 방법좀 알려주세요