Я делаю программу на C++ с использованием БПФ, и она работала нормально, пока я не решил использовать FFTW. После создания библиотек из файлов .def и связывания их с моим проектом он успешно сработает. Однако, когда я пытаюсь запустить приложение, он говорит мне, что это не действительное приложение win32. Запуск DUMPBIN на полученные урожаи файла:Исполняемый файл с VS2010 не является допустимым приложением win32; bindump говорит, что это DLL
(см редактирования)
Любые идеи относительно того, что проблема может быть? Я бы хотел, чтобы он вернулся к созданию в качестве исполняемого файла.
Edit: Полный DUMPBIN:
PE signature found
File Type: DLL
FILE HEADER VALUES
14C machine (x86)
7 number of sections
512E72CE time date stamp Wed Feb 27 14:55:42 2013
0 file pointer to symbol table
0 number of symbols
E0 size of optional header
2102 characteristics
Executable
32 bit word machine
DLL
OPTIONAL HEADER VALUES
10B magiC# (PE32)
10.00 linker version
1C000 size of code
3A000 size of initialized data
0 size of uninitialized data
1229D entry point (1001229D) @ILT+4760([email protected])
1000 base of code
1000 base of data
10000000 image base (10000000 to 10069FFF)
1000 section alignment
200 file alignment
5.01 operating system version
0.00 image version
5.01 subsystem version
0 Win32 version
6A000 size of image
400 size of headers
59987 checksum
3 subsystem (Windows CUI)
140 DLL characteristics
Dynamic base
NX compatible
100000 size of stack reserve
1000 size of stack commit
100000 size of heap reserve
1000 size of heap commit
0 loader flags
10 number of directories
30370 [ 19818] RVA [size] of Export Directory
4B000 [ A0] RVA [size] of Import Directory
66000 [ 1B4] RVA [size] of Resource Directory
0 [ 0] RVA [size] of Exception Directory
0 [ 0] RVA [size] of Certificates Directory
67000 [ 1EC0] RVA [size] of Base Relocation Directory
2D620 [ 1C] RVA [size] of Debug Directory
0 [ 0] RVA [size] of Architecture Directory
0 [ 0] RVA [size] of Global Pointer Directory
0 [ 0] RVA [size] of Thread Storage Directory
0 [ 0] RVA [size] of Load Configuration Directory
0 [ 0] RVA [size] of Bound Import Directory
4E68C [ 35EC] RVA [size] of Import Address Table Directory
0 [ 0] RVA [size] of Delay Import Directory
0 [ 0] RVA [size] of COM Descriptor Directory
0 [ 0] RVA [size] of Reserved Directory
SECTION HEADER #1
.textbss name
10000 virtual size
1000 virtual address (10001000 to 10010FFF)
0 size of raw data
0 file pointer to raw data
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
E00000A0 flags
Code
Uninitialized Data
Execute Read Write
SECTION HEADER #2
.text name
1BE65 virtual size
11000 virtual address (10011000 to 1002CE64)
1C000 size of raw data
400 file pointer to raw data (00000400 to 0001C3FF)
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
60000020 flags
Code
Execute Read
SECTION HEADER #3
.rdata name
1CB88 virtual size
2D000 virtual address (1002D000 to 10049B87)
1CC00 size of raw data
1C400 file pointer to raw data (0001C400 to 00038FFF)
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
40000040 flags
Initialized Data
Read Only
Debug Directories
Time Type Size RVA Pointer
-------- ------ -------- -------- --------
512E72CE cv 7F 0002EA90 1DE90 Format: RSDS, {CC4D0BC3-853A-4
E8D-97A2-304A29035F04}, 4, C:\......
SECTION HEADER #4
.data name
7AC virtual size
4A000 virtual address (1004A000 to 1004A7AB)
400 size of raw data
39000 file pointer to raw data (00039000 to 000393FF)
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
C0000040 flags
Initialized Data
Read Write
SECTION HEADER #5
.idata name
1A611 virtual size
4B000 virtual address (1004B000 to 10065610)
1A800 size of raw data
39400 file pointer to raw data (00039400 to 00053BFF)
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
C0000040 flags
Initialized Data
Read Write
SECTION HEADER #6
.rsrc name
1B4 virtual size
66000 virtual address (10066000 to 100661B3)
200 size of raw data
53C00 file pointer to raw data (00053C00 to 00053DFF)
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
40000040 flags
Initialized Data
Read Only
SECTION HEADER #7
.reloc name
2593 virtual size
67000 virtual address (10067000 to 10069592)
2600 size of raw data
53E00 file pointer to raw data (00053E00 to 000563FF)
0 file pointer to relocation table
0 file pointer to line numbers
0 number of relocations
0 number of line numbers
42000040 flags
Initialized Data
Discardable
Read Only
Summary
1000 .data
1B000 .idata
1D000 .rdata
3000 .reloc
1000 .rsrc
1C000 .text
10000 .textbss
Соответствующая команда - dumpbin.exe/headers. Мы не можем видеть, как это выглядит, но всегда хорошие шансы, что вы пытаетесь использовать 32-разрядную DLL в 64-битном процессе. Или наоборот. –
Большое спасибо, я отредактировал его, чтобы держать всю дамбину. Я действительно пытался сделать .lib для x64, но он дал ошибки компиляции. С другой стороны, dll, ARE x64 ... так что это может быть проблемой, я попробую x86. – user2117056
Выяснил это, если у кого-то еще есть аналогичная проблема: я связывал файлы .exp, а также .lib-файлы; только связывание файлов .lib и размещение DLL-файлов в каталоге исправили проблему. – user2117056