Oculta Função em C, tem como ?

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Oculta Função em C, tem como ?

Mensagempor HC908 » 04 Abr 2008 12:45

Boa amigos do forum. Gostaria de saber se é possivel ocultar as funções em C no CCS. Tipo

void soma(char x, char y)
{
return x+y;
}


void main(void)
{
char z;

z=soma(2,3);
}

Queria vender uma biblioteca ao cliente onde ele so teria acesso so ao label da função, sem o codigo fonte da função. Neste exemplo descrito em cima eu entregaria ao cliente a biblioteca onde ele usava a função soma sem ter conhecimento do que estava escrito na função.
HC908
Byte
 
Mensagens: 248
Registrado em: 26 Mar 2007 09:55

Mensagempor ze » 04 Abr 2008 13:29

é uma pergunta curiosa. p. ex. no mikro tem algumas funções como Glcd_Init(&PORTC,2,3,4,5,7,6,&PORTB) que tentei achar o fonte pra converter pro hitech-c. Como estava demorando pra conseguir, desisti e acabei criando uma outra.
invertendo a pergunta: se alguem souber como localizar o fonte de funções do mikroC gentileza se manifestar se puder/quiser.
abrç
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Mensagempor xultz » 04 Abr 2008 13:51

Coloca a função em outro arquivo, compila só o arquivo, e fornece ao cliente o header com os protótipos das funções e o arquivo objeto, que ele vai usar na linkedição.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor Ander_sil » 04 Abr 2008 14:02

Cria sua Lib e entrega ela junto com a documentação. Isso chama-se API.
Ai seu cliente inclui a lib no projeto dele e usa suas funções e não tera acesso ao código fonte.
Anderson Chrispim da Silva
chrispimdasilva@gmail.com
Ander_sil
Byte
 
Mensagens: 368
Registrado em: 30 Out 2006 09:58
Localização: Campinas - SP

Mensagempor HC908 » 04 Abr 2008 14:36

como faço pra fazer esta biblioteca amigo no CCS. Ha ideia é isto mesmo que vc falou, criar uuma biblioteca mais como fazer isso com PIC?
HC908
Byte
 
Mensagens: 248
Registrado em: 26 Mar 2007 09:55

Mensagempor nichita » 09 Abr 2008 21:19

En CCS no es posible enlazar codigo objeto. Podrias hacerlo en Hi-Tech C
nichita
Bit
 
Mensagens: 5
Registrado em: 10 Mai 2007 20:57

Mensagempor HC908 » 09 Abr 2008 23:07

vc tem certeza que no hitech tem como fazer isto,se sim vou mudar de compilador agora mesmo.
HC908
Byte
 
Mensagens: 248
Registrado em: 26 Mar 2007 09:55

Mensagempor andre_luis » 10 Abr 2008 09:58

Que PIC voce usa ?
Tem o C18
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor nichita » 10 Abr 2008 10:28

HC908 escreveu:vc tem certeza que no hitech tem como fazer isto,se sim vou mudar de compilador agora mesmo.


Asi es, una muestra es el RTOS de SALVO que en su version Lite te da las librerias precompiladas en cambio si tienes la version PRO tienes el codigo fuente y esta escrito en HI-TECH C.

Esto precisamente un ejemplo de lo que quieres hacer.

Creo que también el compilador C de Microchip puede hacer eso.
nichita
Bit
 
Mensagens: 5
Registrado em: 10 Mai 2007 20:57

Mensagempor HC908 » 10 Abr 2008 15:49

alguem poderia mostrar um exemplo simples de como fazer isto?
HC908
Byte
 
Mensagens: 248
Registrado em: 26 Mar 2007 09:55

Mensagempor HC908 » 10 Abr 2008 16:18

consegui fazer no CCS. Basta usar a diretiva #import .. dei uma lida no help do ccs e consegui. Se alguem quizer aprender fala cmg agora .hehehehe at[e mais amgos e muito obrigado pela dica
HC908
Byte
 
Mensagens: 248
Registrado em: 26 Mar 2007 09:55

Mensagempor nichita » 11 Abr 2008 23:33

Que versión de CCS ocupas?
nichita
Bit
 
Mensagens: 5
Registrado em: 10 Mai 2007 20:57

Mensagempor HC908 » 11 Abr 2008 23:40

version 4.065
HC908
Byte
 
Mensagens: 248
Registrado em: 26 Mar 2007 09:55


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x