Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
korez
8 / 8 / 0
Регистрация: 22.02.2011
Сообщений: 182
#1

структура в dll - C++

15.09.2011, 00:58. Просмотров 1068. Ответов 6
Метки нет (Все метки)

как объявить структуру чтобы ее видели все функции?
объявляю ее вне всех функций и все равно не видят.
и как эту структуру сделать видимой для других программ(экспортируемой)?
C++
1
2
struct struct1{
int a};
это схема программы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include ...........
#define ............
 
struct1 stest;
 
functioin1()
{}
 
functioin2()
{}
 
functioin3()
{}
 
functioin4()
{
stest.a = 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2011, 00:58     структура в dll
Посмотрите здесь:

Структура в с++ - C++
подскажите пожалуйста, как удалить элемент массива. У меня он выдает ошибку. Вот текст проги. #include <iostream.h> main() { ...

Структура - C++
Всем привет. Помогите доделать задачу.Вот ее краткое условие:Дана структура учащихся включающая в себя имя и фамилию ученика, номер его...

Структура - C++
как написать программу ?кто лучше учится девочки или мальчики в классе?

структура - C++
написать структуру point с координатами целыми (x,y) написать функцию,которая суммирует координаты двух точек

Структура в С++ - C++
Добрый день всем! Вот моё задание: Известны фамилии 25 человек, их семейное положение: женат (замужем) или нет, и сведения о наличии...

Структура - C++
Вот: #include <iostream> using namespace std; enum etype {laborer, secretary, manager, accountant, executive, researcher}; ...

Структура - C++
Распечатать фамилии рабочих бригады, начинающиеся с букв А и С, с указанием их месячной зарплаты. #include <iostream> #include <vcl.h>...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
15.09.2011, 11:56     структура в dll #2
Цитата Сообщение от korez Посмотреть сообщение
как объявить структуру чтобы ее видели все функции?
объявляю ее вне всех функций и все равно не видят.
и как эту структуру сделать видимой для других программ(экспортируемой)?
- проще всего дать повторное объяевление этой структуры уже в исполняемом модуле, юзающем DLL. Вот накидал Simple проект DLL (StructDLL), в которой присутсвует структура
C++
1
2
3
4
5
struct DLLStruct
{
    char sVal[256];
    int iVal;
};
и проекта использующего эту DLL (UseStructDLL), вот листинг main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <windows.h>
#include <stdio.h>
 
#define IMPORT __declspec (dllimport)
 
#pragma comment(lib,"StructDLL.lib") 
 
struct DLLStruct
{
    char sVal[256];
    int iVal;
};
 
IMPORT void UpdatetStruct(DLLStruct &st);
IMPORT void PrintStruct(DLLStruct st); 
IMPORT DLLStruct GetDLLStruct();
int main()
{
    printf("Program which showes using DLL structures\r\n");
    DLLStruct st;
    UpdatetStruct((st = GetDLLStruct()));
    PrintStruct(st);
    system("pause");
    return 0;
}
Как видишь я дал повторное объявление struct DLLStruct и спокойно пользуюсь ей в программе

[Результат работы]
Program which showes using DLL structures
Enter sVal :fgdgdfg
Enter iVal :215
sVal : fgdgdfg
iVal : 215
Для продолжения нажмите любую клавишу . . .
Вложения
Тип файла: rar StructDLL.rar (7.5 Кб, 21 просмотров)
Тип файла: rar UseStructDLL.rar (17.9 Кб, 18 просмотров)
korez
8 / 8 / 0
Регистрация: 22.02.2011
Сообщений: 182
16.09.2011, 02:10  [ТС]     структура в dll #3
у меня нет и небудет кодов исполняемого модуля.
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
16.09.2011, 02:13     структура в dll #4
Цитата Сообщение от korez Посмотреть сообщение
у меня нет и небудет кодов исполняемого модуля.
но для отладки-то вы напишите что-то простое, верно? как иначе?
korez
8 / 8 / 0
Регистрация: 22.02.2011
Сообщений: 182
16.09.2011, 06:04  [ТС]     структура в dll #5
коммерческий продукт.
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 08:03     структура в dll #6
Цитата Сообщение от korez Посмотреть сообщение
у меня нет и небудет кодов исполняемого модуля.
- обойдись без стрктур замени DLLStruct на void *

Добавлено через 4 минуты
Цитата Сообщение от korez Посмотреть сообщение
коммерческий продукт.
PS:Коммерческий продукту всягда техописанием снабжают, там то и можно указать структуру - по моему этот путь наиболее простой
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2011, 12:14     структура в dll
Еще ссылки по теме:

Структура - C++
Объявить структуру Adres{ФИО или организация, город, улица, дом, квартира} и разработать функции Adres Init(ФИО, город, улица, дом,...

структура - C++
вывести список на экран упорядочив по автору а внутри каждого автора по году издания. вот что получилось у меня но выводит неправильно. ...

Структура - C++
Всем привет!!Помогите подкорректировать программку....Буду очень благодарин!! Условие: Составьте структуру, проинициализируйте...

Структура С++ - C++
Нужно решить задачу на С++.Условие:Известны максимальные скорости 20 моделей легковых автомобилей.Все значения выражены в км/ч.Напечатать...

Структура - C++
Я не давно начал изучать C++, сам пробовал, мало что получилось. Условие задачи: Дана следующая информация о книгах библиотеки: автор,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 12:14     структура в dll #7
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- обойдись без стрктур замени DLLStruct на void *
-Усовершенствовал свой предыдущий DLL теперь проект UseStructDLL не содержит в себе DLLStruct
Миниатюры
структура в dll  
Вложения
Тип файла: rar StructDLL2.rar (9.2 Кб, 24 просмотров)
Тип файла: rar UseStructDLL2.rar (19.4 Кб, 16 просмотров)
Yandex
Объявления
16.09.2011, 12:14     структура в dll
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru