Central Habbo Forum
Ainda não está Registrado ? , Então está esperando o que ? , Registre-se e disfrute do melhor do Fórum, se já for registrado, só faça o login

(Observações : Usuários não registrados não tem direitos a nenhum conteúdo)

Participe do fórum, é rápido e fácil

Central Habbo Forum
Ainda não está Registrado ? , Então está esperando o que ? , Registre-se e disfrute do melhor do Fórum, se já for registrado, só faça o login

(Observações : Usuários não registrados não tem direitos a nenhum conteúdo)
Central Habbo Forum
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Procurar
 
 

Resultados por:
 


Rechercher Pesquisa avançada

Entrar

Esqueci-me da senha

Últimos assuntos
» gente o melhor habbo q existe
[Game Maker]Criando e usando uma DLL I_icon_minitimeSeg Jan 30 2012, 12:27 por lucas-nobile@hotmail.com

» [Tutorial GameMaker] Variáveis
[Game Maker]Criando e usando uma DLL I_icon_minitimeSex Nov 18 2011, 09:12 por admin

» Survival of the Ball 1.0
[Game Maker]Criando e usando uma DLL I_icon_minitimeSex Out 07 2011, 00:54 por admin

» Criando Habbo Retro (Sem Hamachi)
[Game Maker]Criando e usando uma DLL I_icon_minitimeDom Set 11 2011, 13:54 por -Desconectado

» Como criar um habbo V65 com Bling + Valentim 2011 + Bola + Freeze e sem Bug
[Game Maker]Criando e usando uma DLL I_icon_minitimeDom Ago 28 2011, 15:46 por admin

» Master emulator 100% fixado r63.2
[Game Maker]Criando e usando uma DLL I_icon_minitimeTer Ago 23 2011, 19:52 por idiegofelicio

» Server Habbo Pirata com VIP Club e HC Club
[Game Maker]Criando e usando uma DLL I_icon_minitimeSáb Ago 20 2011, 11:39 por admin

» Calculadoras no Delphi 7
[Game Maker]Criando e usando uma DLL I_icon_minitimeDom Ago 14 2011, 20:49 por ♥Giulia♥

» [TutorialGamemaker]Criando Jogo de plataforma simples
[Game Maker]Criando e usando uma DLL I_icon_minitimeQua Ago 10 2011, 13:05 por admin

Palavras-chaves

2011  

Flux RSS


Yahoo! 
MSN 
AOL 
Netvibes 
Bloglines 


Social bookmarking

Social bookmarking reddit      

Conservar e compartilhar o endereço de Central Habbo Forum em seu site de social bookmarking

Conservar e compartilhar o endereço de Central Habbo Forum em seu site de social bookmarking


[Game Maker]Criando e usando uma DLL

Ir para baixo

[Game Maker]Criando e usando uma DLL Empty [Game Maker]Criando e usando uma DLL

Mensagem  admin Sáb Mar 05 2011, 14:52

AS seguintes ferramentas seram necessárias para concluir esse tutorial com exito!
voce precisara ter os seguintes programas
Game Maker Pro
Dev-C++

voce pode usar outras linguagens para criar sua dll tbm
como por exemplo
delphi,c++/c/Visual Basic ect...
mas neste caso iremos usar a linguagem de programação c++ acompanhado do software/IDE DEV-C++
============================INICIANDO=====================================
primeiro vamos criar a dll Very Happy
abra o programa DEV-C++
clique em
Arquivo>>Novo>>Projeto
uma janelinha ira se abrir
como na imagem
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
clique no icone DLL e de um nome ao seu projeto, eu dei o nome ao meu de "MinhaDLL" :3
entao aparecera a janela para salvar o arquivo, como na imagem abaixo.
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
após isso aparecera no seu programa os seguintes códigos
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
altera ele em algumas partes, para que fique facil manipula-lo
deixe o código assim
Código:

#ifndef _DLL_H_
#define _DLL_H_

#if BUILDING_DLL
# define GML __declspec (dllexport)
#else /* Not BUILDING_DLL */
# define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */
//aqui vc colocara as suas funçoes ;]

#endif /* _DLL_H_ */
ok, o arquivo Header ja esta pronto, agora precisamos preparar o arquivo .cpp, vai para a aba "[*] dllmain.cpp"
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
altera este código
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
para esse
Código:

/* Replace "dll.h" with the name of your header */
#include "dll.h"
#include <windows.h>
//aqui é a area onde as funçoes ficaram


//====================================
BOOL APIENTRY DllMain (HINSTANCE hInst    /* Library instance handle. */ ,
                      DWORD reason        /* Reason this function is being called. */ ,
                      LPVOID reserved    /* Not used. */ )
{
    switch (reason)
    {
      case DLL_PROCESS_ATTACH:
        break;

      case DLL_PROCESS_DETACH:
        break;

      case DLL_THREAD_ATTACH:
        break;

      case DLL_THREAD_DETACH:
        break;
    }

    /* Returns TRUE on success, FALSE on failure */
    return TRUE;
}
pronto, a dll esta pronta começar!
vamos criar uma simples funçao agora
vá para a aba "[*] dll.h"
essa aba é onde vc declara a funçao
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
agora vamos criar a funçao digite isso na area
Código:

#ifndef _DLL_H_
#define _DLL_H_

#if BUILDING_DLL
# define GML __declspec (dllexport)
#else /* Not BUILDING_DLL */
# define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */
//aqui vc colocara as suas funçoes ;]
extern "C" GML double soma(double x,double y);//essa é a nossa funçao, agora ela esta declarada!
//double x e double y sao argumentos.                     

#endif /* _DLL_H_ */
agora va para o arquivo "[*] dllmain.cpp"
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
agora teremos que fazer com que a funçao seja executada
digite o seguinte código na area
Código:

/* Replace "dll.h" with the name of your header */
#include "dll.h"
#include <windows.h>
//aqui é a area onde as funçoes ficaram
extern "C" GML double soma(double x,double y)//essa é a função com os comandos dados.
{
return (x+y);   
}

//====================================
BOOL APIENTRY DllMain (HINSTANCE hInst    /* Library instance handle. */ ,
                      DWORD reason        /* Reason this function is being called. */ ,
                      LPVOID reserved    /* Not used. */ )
{
    switch (reason)
    {
      case DLL_PROCESS_ATTACH:
        break;

      case DLL_PROCESS_DETACH:
        break;

      case DLL_THREAD_ATTACH:
        break;

      case DLL_THREAD_DETACH:
        break;
    }

    /* Returns TRUE on success, FALSE on failure */
    return TRUE;
}
agora pressione F9 para testar o seu projeto!
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
se aparecer a seguinte mensagem
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
quer dizer que sua dll funcionou perfeitamente :­D
agora vamos testa-la no game maker :gm8: finalmente \o/

===================AGORA NO GAME MAKER==============================
abra o game maker
salve o jogo na mesma pasta onde vc salvou a dll
e entao crie um script e de o nome de DLLInit e entao digite o seguinte codigo nesse script
[DLLInit]
Código:

dll="MinhaDLL.dll";
global.SOMA=external_define(dll,"soma",dll_stdcall,ty_real,2,argument0,argument1);
/*
argument0=nome da dll
argument1=nome da funçao
argument2=tipo de resposta
argument3=tipo de retorno, se o valor da funçao retornara a string ou valor real.
argument4=numero de argumentos que a funçao tem
argument5=double x
argument6=double y
*/
ficara assim
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
crie outro script e de o nome de DllSoma e digite o seguinte código
Código:

return (external_call(global.SOMA,argument0,argument1));//retorna ao resultado da funçao da dll
ficara assim
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]

QUASE LA :­D
agora vamos testar para ver se esta funcionando
crie um objeto e de qualquer nome a ele
add o evento Create e arraste o d´n ´d Execute code
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
digite o seguinte código
Código:

DllInit();//inica a dll
soma=DllSoma(8,8);//executa a funçao da dll
show_message(soma);//mostra uma mensagem na tela com o valor do retorno da dll
crie uma room e coloque esse objeto na room
se aparecer uma mensagem mostrando o numero 16
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
PARABENS VOCE CONCLUIU O TUTORIAL COM EXITO!
a dll funcionou e agora voce tera portas abertas para criar outras dll Very Happy
Download do Exemplo
====================OBRIGADO POR LEREM MEU PEQUENO PRIMEIRO TUTORIAL==================

Creditos:Jiraya (Tuto Retirado da GMBR Forum)
admin
admin
Administradores
Administradores

Mensagens Mensagens : 201
Pontos Pontos : 572
Reputação Reputação : 64
Data de inscrição Data de inscrição : 15/06/2010
Idade Idade : 28
Localização Localização : Curitiba-PR

https://centralhabbo.forumbrasil.net

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos