메모리가 부족해서 Windows 사진 뷰어를 실행할 수 없나요?

메모리가 부족해서 Windows 사진 뷰어를 실행할 수 없나요?

방금 이상한 오류가 발생했습니다. 이메일로 이미지를 받았는데, Outlook(Office 365 버전)에서 이메일을 열고 이미지를 두 번 클릭하여 열었습니다. 이 오류가 발생했습니다.

"컴퓨터에 사용 가능한 메모리가 충분하지 않기 때문에 Windows 사진 뷰어에서 이 사진을 표시할 수 없습니다. 사용하지 않는 일부 프로그램을 닫거나 하드 디스크 공간을 확보한 후(거의 꽉 찬 경우) 다시 시도하십시오."

여기에 이미지 설명을 입력하세요

몇 가지 사항:

  • 저는 항상 이 노트북에서 사진 뷰어를 사용해 왔으며 이전에는 문제가 없었습니다. 다시 시작하고 이미지를 다시 열려고 시도했지만 운이 없었습니다.
  • 이미지가 손상되지 않았습니다. 데스크톱에 저장하고 열려고 했지만 동일한 문제가 발생했습니다. 포토샵으로 열었는데 잘 되더군요. PSD에서 새 JPG로 저장했습니다. 새 JPG에도 동일한 메시지가 표시됩니다.
  • 열려고 시도한 모든 이미지에 이 오류가 발생했습니다.
  • 이미지 크기는 200KB, 해상도는 1428x2000입니다.
  • 내 노트북에는 32GB RAM이 있으며 작업 관리자에 따르면 현재 8GB를 사용하고 있습니다.

내가 시도한 것:

Microsoft의 이 게시물은 다음과 같습니다.https://social.technet.microsoft.com/Forums/windows/en-US/7b6ae08b-4b5c-443b-9d43-e87ca5e7aeb1/wndows-photo-viewer-eration?forum=w7itproappcompat

  • 색상 관리에 들어가면 프로필이 설정되어 있지 않아 삭제할 수 없기 때문에 작동하지 않았습니다.

나는 다음 게시물을 보았습니다.Windows 사진 뷰어에 더 많은 RAM이 필요합니까?

  • 표준 Intel(R) HD Graphics 530과 Nvidia Quadro M1000M 등 2개의 비디오 카드가 내장되어 있습니다. 게시물의 해상도를 시도했지만(다른 비디오 카드를 사용하는 다른 모니터로 이동) 아무런 변화가 없었습니다.

디스크 정리. 어쨌든 여유 공간이 많았지만 아무것도 바뀌지 않았습니다.

사양: 저는 32GB 메모리, 500GB 스토리지(현재 192GB 무료), Intel Core i7-6700HQ를 갖춘 Lenovo P50 노트북에서 Windows 10 v1909 Build 18363.535를 실행하고 있습니다.

누구든지 이 문제를 해결하는 데 도움을 주시면 감사하겠습니다. 새로운 Microsoft Photos 앱은 정말 형편없기 때문에 어떤 대가를 치르더라도 사용하지 않겠습니다.

답변1

Android에서 내보낸 사진과 비슷한 문제가 있었기 때문에 이 문제가 발생했습니다.축소된 무료로 보내기애플리케이션.

내 경우에 이 문제는 포함된 항목과 관련이 있습니다.프로필-icc해당 JPG 파일에 있습니다.

  Profiles:
  Profile-icc: 536 bytes

으로 확인 가능ImageMagick 식별 -verbose명령.

이는 Outlook에서 바로 여는 솔루션이 아닐 수도 있지만 소스에서 해당 파일을 수정할 수 있습니다.

나는 달리면서 그것을 발견했다.BADFILE.jpg 변환 -strip GOODFILE.jpg해당 파일에 대한 명령을 실행하면 아무런 문제 없이 Windows 7 Photo Viewer에서 열립니다.

-strip  - strip image of all profiles and comments

이 전체 도구는 여기에서 얻을 수 있습니다:https://imagemagick.org/script/download.php

따라서 모든 이미지에 다시 액세스할 수 있도록 하려면 해당 이미지에 대해 일괄 실행을 실행하면 됩니다.

mogrify.exe -format jpg -verbose -path C:\OUTPUT_DIR -strip *.jpg

다음과 같은 상대 경로를 사용할 수도 있습니다.-경로 OUTPUT_DIR하위 폴더에 넣으려면.

Outlook에서 해당 파일을 직접 열어야 하는 경우 해당 파일을 여는 데 문제가 없는 IrfanView를 추천합니다. 기본 그래픽 파일 프로그램으로 설정하기만 하면 됩니다.

어떤 사람들은 화면 구성에서 기본 프로필을 변경하는 것과 관련된 조언을 했지만 저는 이를 모니터 유형으로 설정했기 때문에 해당 설정을 망치고 싶지 않습니다.

완전 자동을 원한다면 다음 3가지가 필요합니다.

  1. 기본프로그램편집기(https://defaultprogramseditor.com/)
  2. 이미지매직(https://imagemagick.org/download/binaries/ImageMagick-7.0.10-1-portable-Q16-x64.zip)
  3. 열린 파일을 처리할 배치 스크립트입니다.

1) 먼저 ImageMagick을 c:\apps\ImageMagick-7.0.10-1-portable-Q16-x64로 압축 해제합니다.

2) 배치 스크립트 생성c:\apps\gfxopen.bat:

@echo off
C:\Apps\ImageMagick-7.0.10-1-portable-Q16-x64\convert.exe %1 -strip c:\temp\temp12345file.jpg

rundll32 "C:\Program Files\Windows Photo Viewer\PhotoViewer.dll", ImageView_Fullscreen c:\temp\temp12345file.jpg

del c:\temp\temp12345file.jpg

3) 압축을 푼다기본프로그램편집기실행한 다음 선택하세요.파일 형식 설정 > 컨텍스트 메뉴 > jpg 확장자 찾기 > 추가...

명령 이름:Open Fixed Image

프로그램 경로:"C:\apps\gfxopen.bat" "%1"

그런 다음 선택"고정 이미지 열기"그리고 누르세요"선택한 명령을 기본값으로 설정"

그 다음에상황에 맞는 메뉴 저장

그게 다야 :)

답변2

동일한 문제가 발생하여 간단한 단계에 따라 해결했습니다.

  • Notepad++ 또는 기타 유사한 16진수 편집기를 사용하여 이미지 파일을 엽니다.
  • ICC_PROFILE텍스트 내부를 찾아 다음으로 바꿉니다 ICC_PROFILX(일반적으로 파일의 첫 번째 텍스트 줄).
  • 편집된 파일을 저장합니다. 그게 다야!

전에 여기에 이미지 설명을 입력하세요 후에 여기에 이미지 설명을 입력하세요

답변3

colorWindows 시작 메뉴 검색 상자에 입력 하고 Colour Management.

"색상" 시작 메뉴 검색

Advanced그런 다음 탭 으로 이동 Agfa:Swop Standard하여Device Profile

색상 관리 화면

답변4

이 내용을 접할 수 있는 Android 개발자의 경우: Windows 사진 뷰어가 작성하는 ICC 프로필 메타데이터를 좋아하지 않는 것 같습니다 Bitmap.compress(어쩌면 마음에 들지 않을 수도 있음).어느실제로 ICC 프로필은요? 확인하지 않았습니다).

JPEG 파일에서 해당 메타데이터 세그먼트를 간단히 제거하여 Windows 사진 뷰어와 다시 호환되는 JPEG를 만드는 방법은 다음과 같습니다.

    // Some image viewer applications (such as Windows Photo Viewer) doesn't seem to like the ICC profile meta data that Android's Bitmap.compress writes.
    // This decorator removes the section.
    private static class RemoveFFE2OutputStreamDecorator extends OutputStream {
        OutputStream underlyingStream;
        boolean marker = false;
        boolean skipSegment = false;

        public RemoveFFE2OutputStreamDecorator(OutputStream underlyingStream) {
            this.underlyingStream = underlyingStream;
        }

        @Override
        public void write(int b) throws IOException {
            // Based on https://en.wikipedia.org/wiki/JPEG#Syntax_and_structure
            if (this.marker) {
                this.marker = false;
                if ((b & 0xFF) == 0xE2) { // The 0xFF,0xE2 segment that Android writes seems to cause trouble with Windows Photo Viewer.
                    this.skipSegment = true;
                } else {
                    this.skipSegment = false;
                    this.underlyingStream.write(0xFF);
                    this.underlyingStream.write(b);
                }
            } else if ((b & 0xFF) == 0xFF) {
                this.marker = true;
            } else if (!this.skipSegment) {
                this.underlyingStream.write(b);
            }
        }

        @Override
        public void flush() throws IOException {
            this.underlyingStream.flush();
        }

        @Override
        public void close() throws IOException {
            this.underlyingStream.close();
        }
    }

관련 정보