2011-10-23 3 views
0

VS200X/MSVC로 잘 컴파일되는 VST 플러그인이 있습니다. 나는 환경을 선호하는 사용자를 위해 Codeblocks/MinGW 프로젝트를 만들려고 노력 중이다. codeblocks/mingw & windres 문제 .png 리소스가있는 .dll (VST 플러그인) 빌드

내가

내가 codeblocks 프로젝트의 .rc 파일을 포함하는 자원 (.png를 파일)를 포함하는 것을 시도 시작할 때까지, 그것은 GUI와 더불어, VST 호스트에서 작동 codeblocks와 DLL을 빌드

. 내 resource.h의 리소스 경로에 공백이 없습니다.

내가 만든 .dll 파일을 복사하려고하면 운영 체제가 잠겼습니다. 마치 windres가 리소스를 성공적으로 컴파일하지 않고 파일에 대한 핸들을 유지하는 것처럼 보입니다. 리소스의 크기와 비슷하지만 .dll 크기로 보입니다. 내가 GDB를 통해 vst 호스트에서 dll을 실행하려고하면 어떤 중단 점이 발생하지 않습니다 ... 아마 호스트가 .dll을로드 할 수 없습니다. 여기

<Target title="Release Win32"> 
<Option output="build-win-cb\IPlugEffect" prefix_auto="1" extension_auto="1" /> 
<Option working_dir="build-win-cb\" /> 
<Option object_output="build-win-cb\Release" /> 
<Option type="3" /> 
<Option compiler="gcc" /> 
<Option parameters="IPlugEffect.dll" /> 
<Option host_application="C:\Program Files\vsthost\vsthost.exe" /> 
<Compiler> 
<Add option="-O3" /> 
<Add option="-msse2" /> 
<Add option="-ffast-math" /> 
<Add option="-DVST_API" /> 
<Add option="-DWIN32" /> 
<Add option="-D_WIN32_WINNT=0x0501" /> 
<Add option="-DWINVER=0x0501" /> 
<Add option="-D_CRT_SECURE_NO_DEPRECATE" /> 
<Add option="-DPNG_NO_ASSEMBLER_CODE" /> 
<Add option="-DPNG_LIBPNG_SPECIALBUILD" /> 
<Add option="-DDLL_BUILD" /> 
</Compiler> 
</Target> 

resource.h 

... 
// Unique IDs for each image resource. 
#define KNOB_ID  101 
// Image resource locations for this plug. 
... 

IPlugEffect.rc 

#include "resource.h" 

KNOB_ID  PNG KNOB_FN 
#define KNOB_FN  "resources/img/knob.png" 

답변