>백엔드 개발 >C++ >단순화된 배포를 위해 실행 파일에 파일을 포함하는 방법은 무엇입니까?

단순화된 배포를 위해 실행 파일에 파일을 포함하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-01 15:37:02199검색

How to Embed Files into Executables for Simplified Deployment?

간단한 배포를 위해 실행 파일에 파일 포함

PNG 이미지에 크게 의존하는 작은 실행 파일이 있습니다. ZIP 아카이브 배포를 방지하려면 PNG 파일(또는 다른 파일)을 실행 파일 자체에 포함시키는 방법을 찾으세요.

이식 가능한 접근 방식 중 하나는 다음과 같은 기능을 정의하는 것입니다.

<code class="c++">typedef unsigned char Byte;

Byte const* pngFileData()
{
    static Byte const data =
    {
        // Byte data generated by a helper program.
    };
    return data;
}</code>

바이트 데이터를 생성하려면 PNG 파일을 바이너리로 읽고 C 중괄호 초기화 텍스트를 출력하는 도우미 프로그램을 사용하세요. 널리 사용되는 이미지 조작 유틸리티인 ImageMagick에는 이러한 목적을 위한 도우미 프로그램이 포함되어 있습니다.

Windows 관련 애플리케이션의 경우 Windows 리소스 구성표를 활용할 수 있습니다. 이를 통해 파일을 실행 파일에 리소스로 포함하고 리소스 ID를 사용하여 해당 파일에 액세스할 수 있습니다.

Visual C 2010을 사용하여 실행 파일에 PNG 파일을 포함하려면:

  1. PNG 파일을 추가합니다. 프로젝트에 리소스로 추가합니다.
  2. 리소스 유형을 "이미지"로 설정하고 리소스 이름을 고유 문자열(예: "MY_PNG")로 설정합니다.
  3. 코드에서 전역을 선언합니다. PNG 데이터에 대한 포인터:
<code class="c++">extern const unsigned char* MY_PNG_DATA;</code>
  1. 초기화 함수에서 리소스의 PNG 데이터를 로드합니다.
<code class="c++">MY_PNG_DATA = (const unsigned char*)LoadResource(hInstance, MAKEINTRESOURCE(IDR_MY_PNG));</code>

PNG를 삽입하여 파일을 실행 파일에 추가하면 애플리케이션에 필요한 모든 리소스가 포함된 단일 파일을 생성하므로 추가 다운로드나 외부 리소스가 필요하지 않습니다.

위 내용은 단순화된 배포를 위해 실행 파일에 파일을 포함하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.