이미지 실행 시 dllhost

조회수 707회

이미지를 윈도우즈 뷰어로 실행할 때마다 프로세스를 확인해보면 dllhost.exe가 실행되어 있는데 이 그림판으로 실행해보면 dllhost가 안 뜨더라구요. 윈도우즈 뷰어로 실행해도 dllhost가 안 뜨게 하는 방법은 없나요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

2 답변

  • dllhost 의 역활이 여러가지인데 그중에 하나가 썸네일 만들때 사용합니다.

    dllhost 가 이상한 파일은 아니므로 무시하면 됩니다.

    • 검색으로 dllhost가 시스템 관련 파일이라서 지우면 안되고 무시한다는건 알고 있는데 그럼 윈도우즈 뷰어로 실행하지 말고 그림판으로 실행하는 방법밖에 없는 건가요? 알 수 없는 사용자 2018.5.21 17:33
    • dllhost 가 무슨 문제가 있나요? 정영훈 2018.5.21 18:21
    • 질문에 썼듯이 제 작업프로그램 이용해 이미지 실행 시 그림판으로 실행하면 상관없는데 윈도우즈 뷰어로는 실행이 안되는 문제가 있어서 그렇거든요. 그래서 그림판으로 실행하는 방법밖에 없나고 물어본 겁니다. 알 수 없는 사용자 2018.5.21 18:24
    • 작업프로그램은 무엇이고 이미지를 실행한다는 표현은 무엇인가요? 그러니까 질문자가 개발한 프로그램으로 이미지를 불러올 때 문제라는 의미인가요? 실행된 프로세스 dllhost.exe 의 실제 경로를 보세요. 이상한 곳의 파일은 아닌지요. 질문을 잘 적어야 합니다. 윈도우도 버전이 다양하고 개발한 프로그램이라면 개발환경을 명시해야 유추해볼 수 있는 겁니다. 달랑 2줄짜리 질문인데...구체적인 답변을 바랄수는 없는 겁니다. 정영훈 2018.5.21 18:41
    • 자바의 processbuilder를 이용해서 외부파일을 실행하는 건데 외부파일 중 이미지를 윈도우즈 뷰어로 실행 시 프로세를 확인해보면 dllhost가 뜨는거고 그림판이나 이미지뷰어 같은 거으로 실행해보면 dllhost가 안뜹니다. 확인해보니까 이미지를 윈도우즈 뷰어로 실행시에는 무조건 뜨는 거 같은데 그럼 방법이 없는거 같네요.. 알 수 없는 사용자 2018.5.21 18:46
    • 코드를 올려보세요. 프로세스를 folk 하는 부분을 봐야 알 수 있을 것 같습니다. 정영훈 2018.5.21 18:53
    • 코드 답글에 올렸습니다 알 수 없는 사용자 2018.5.23 09:38
  • try { ArrayList cmd = new ArrayList(); cmd.add("cmd"); cmd.add("/c");

        cmd.add("이미지 파일 있는 경로");
    
        ProcessBuilder pb = new ProcessBuilder(cmd);
        //p = Runtime.getRuntime().exec(new String[] {"cmd", "/c", directory+"\\"+file});
    
        Process p=pb.start();
    
        p.waitFor();`
    
    } catch (InterruptedException e) {
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    

    } 이 코드 그대로 디버깅으로 실행해보면 이미지 연결 프로그램이 그림판으로 설정되면 실행하다가 waitFor()에서 걸리고 그렇지 않고 윈도우즈 뷰어로 설정되어 있으면 waitFor()에 걸리지 않고 넘어갑니다. 원래 실행한 외부파일을 꺼야 그 뒤에 제 작업에서 기능을 추가할려고 한건데 윈도우즈 뷰어로 설정되어 있으면 그렇지가 않다보니....

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)