Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> WindowsForm в dll 
:(
    Опции темы
NatNiM
Дата 27.7.2012, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.4.2011

Репутация: нет
Всего: нет



Здравствуйте.

Помогите, пожалуйста, разобраться.
Необходимо создать dll, которая должна запускать некоторое окно.
Первый вопрос встал такой, какого типа создавать проект (studio 2010)? 
PM MAIL   Вверх
Dem_max
Дата 27.7.2012, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: нет
Всего: 39



Такого который тебе понравиться


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
saneea
Дата 27.7.2012, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



В свойствах проекта можно указать, что тебе нужно на выходе (exe или dll). Попробуй сделать сначала просто WindowsForm проект, а затем поменять в свойствах тип выходного файла.
PM MAIL   Вверх
NatNiM
Дата 28.7.2012, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.4.2011

Репутация: нет
Всего: нет



Я выбрал тип проекта dll, но там еще есть возможность выбрать atl или mfc.
dll должна запускать некоторую форму. Или же для работы с формой нужно подключать дополнительно еще библиотеки?
PM MAIL   Вверх
saneea
Дата 30.7.2012, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Маленьких совет: решай проблемы отдельно. В данный момент не понятно, в чём проблема в том что ты не знаешь как работать с формами или в том, что ты не умеешь работать с DLL (никаких упрёков, просто реально не понятно в чём вопрос).
PM MAIL   Вверх
NatNiM
Дата 30.7.2012, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 14.4.2011

Репутация: нет
Всего: нет



Спасибо, разобрался, получилась dll.
А сможете подсказать, пожалуйста, как проверить ее работу.
Вот cpp-файл:

Код

#include "stdafx.h"
#include <Windows.h>
#include <stdio.h>
#include <iostream>
#include <stdio.h>

using namespace std;

extern "C++" __declspec(dllexport) void Window()
 {

  HINSTANCE instanceHandle;
  HWND MainWindowHandle = 0;
  MainWindowHandle = CreateWindow(
                            LPCWSTR(sum("lib.dll").c_str()),
                            LPCWSTR(sum("lib.dll").c_str()),
                            WS_OVERLAPPEDWINDOW,
                            CW_USEDEFAULT, 
                            CW_USEDEFAULT,
                            CW_USEDEFAULT,
                            CW_USEDEFAULT,
                            0,
                            0, 
                            instanceHandle,
                            0);
 }


Вот попытка загрузки dll:

Код

HMODULE hModule = LoadLibrary(TEXT("dtcd_01m_k1_3x.dll"));
typedef int ( *Wind)(); 
Wind lpClientInit = (Wind)GetProcAddress(hModule,"Window");
//lpClientInit(); //вот на этой строчке вылетает ошибка
if (lpClientInit == NULL)
{
   int errorCode = GetLastError();


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0606 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.