Ola pessoal, estou somente agora programando em VB6 e gostaria que voces me dessem uma ajudinha com as funcoes API, queria que me ajudassem detalhadamente para que eu podesse enteder. Se poderem gostaria que dessem um exemplo de algum programa que que tenha haver com asfuncoes API.:wow:
Ola pessoal, estou somente agora programando em VB6 e gostaria que voces me dessem uma ajudinha com as funcoes API, queria que me ajudassem detalhadamente para que eu podesse enteder. Se poderem gostaria que dessem um exemplo de algum programa que que tenha haver com asfuncoes API.:wow:
Tens vários sites que podes usar para alguma ajuda relacionada com API.
http://www.allapi.net é um bom exemplo dum site que eu ainda uso.
Um exemplo para tu dares já um toque na API:
Cria um novo projecto, e acrescenta-me um timer, denominado "Timer1", e uma TextBox, "Text1", e uma ListBox "List1" e cola isto:
Option Explicit
'EXEMPLO DE COMO USAR API
'angelofwisdom, 10/11/2006
'Declarações da API:
'GetForegroundWindow - retorna o Handle da janela actual. Handle = identificação
'GetWindowTextLength - retorna o número de caracteres do título da janela actual
'GetWindowText - retorna o título da janela actual, e escreve-o numa variável
' dada pelo utilizador.
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" _
(ByVal hwnd As Long) As Long
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" _
(ByVal hwnd As Long, _
ByVal lpString As String, _
ByVal cch As Long _
) As Long
'Variável global: LastHandle, que contém o handle da última janela verificada.
Private LastHandle
Private Sub Form_Load()
'Altera o intervalo do Timer para 100, de forma a não ocupar muito CPU
'e ter um intervalo aceitável para verificar a janela actual.
Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer()
'dimensiona cada variável
Dim CurrentWindowHandle As Long
Dim TextLength As Integer
Dim buffer As String
'verifica qual é o handle (a identificação) da janela actual
CurrentWindowHandle = GetForegroundWindow
'se a janela actual não for a janela encontrada na última verificação
'(isto é, caso o utilizador tenha mudado de janela)
If Not CurrentWindowHandle = LastHandle Then
'verifica quantos caracteres tem o título janela actual
TextLength = GetWindowTextLength(CurrentWindowHandle)
'aumenta o buffer de modo a ter o mesmo número de espaços
'isto é, aloca na memória o espaço suficiente para ir buscar o título
buffer = Space(TextLength + 1)
'vai buscar o título da janela actual, e vai pô-lo na variável "buffer"
'apenas irá "pegar" em alguns bytes. Neste caso, no tamanho do buffer,
'que, por sua vez, tem o tamanho total dos caracteres do título.
'Desta forma, tanto se podem ir buscar 10 bytes, como 100, como todos os bytes
'que o título da janela tem.
GetWindowText CurrentWindowHandle, buffer, Len(buffer)
'Escreve na TextBox o buffer, isto é, o título da janela actual
Text1.Text = buffer
'Adiciona, na lista, o handle da janela actual, e o respectivo título
List1.AddItem CStr(CurrentWindowHandle) & " | " & Text1.Text
'E diz que, esta janela é a última janela verificada.
'Assim, não precisa de entrar nesta função a cada 1/10 de segundo.
LastHandle = CurrentWindowHandle
End If
End Sub
Comentei o código todo. No entanto, aviso-te já que não sou propriamente um bom professor...
Espero que ajude :) se precisares de alguma ajuda suplementar, pede ;)
Cumprimentos [[[[[[[[[[]]]]]]]]]]
angelofwisdom
Valeu pela ajuda caro angelofwisdom (http://www.techzonept.com/member.php?u=20575) vbmenu_register("postmenu_1250011", true); :kfold: valeu mesmo ya.
Agradecimentos ao quadrado.:x2:
Valeu pela ajuda caro angelofwisdom (http://www.techzonept.com/member.php?u=20575) vbmenu_register("postmenu_1250011", true); :kfold: valeu mesmo ya, agora ja cosigo fazer qualquer outro programa usando funcoes API.
Agradecimentos ao quadrado.:x2:
Anytime :)
Come brada sera que me poderias indicar sites em portugues, a minha nota em Ingles nao passa de 17 e me fica um bocado dificil entender o que la esta.:)
Muito sinceramente, em português não sei... mas se vais ficar na área de programação, acredita que saber inglês é precioso. Vê lá tu que até eu entrar no 10º ano, pensava que Inglês era obrigatório... enquanto que não passa de mais uma disciplina.
Estar no mundo da informática e não saber inglês... epah, não consigo encontrar uma analogia ao que é :-D mas acredita que não irás poder usufruir duma grande parte daquilo que a internet te pode dar.
Abraços [[[[[[]]]]]]]
angelofwisdom
p.s.: acho que com 17 tinhas o dever de entender o que lá está :-D
p.p.s.: o que é suposto dizeres com "come brada"? :confused:
Em parte concordo com o angelofwisdom (http://www.techzonept.com/member.php?u=20575) pois inglês é algo realmente importante para um informático, quanto mais cedo de habituares com o inglês técnico melhor.
No entanto tal como referi..., é inglês técnico e tu com 16 anos é aceitável teres dificuldades (eu mesmo sinto dificuldade em algumas expressões), mas nada como perguntar ;)
abraços, HecKel
Ca em Angola Come Brada e mais ou menos chamar alguem mas com todo o respeito tas a ver:wow:
Notei agora, depois de ter "postado" no fórum inglês de visual basic, que estás lá a colocar a mesma questão (http://www.xtremevbtalk.com/showthread.php?t=274546). Ainda precisas de alguma ajuda extra? É que num fórum ingles, vão-te dar links em inglês....
p.s.: só notei que eras tu depois de eu te ter respondido ;)
Cumps [[[[[[]]]]]]
angelofwisdom
Estive a notar que quando declaramos a funcao API ela traz consigo alguns parametros:) .
Agora me digam, sera que para chamar a funcao API devo primeiro criar uma variavel de retorno ?e depois devo tambem trabalhar com os parametros da funcao? caso tenha de o fazer como devo?:)