AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ICQ - API

Ein Thema von Yheeky · begonnen am 7. Jul 2002 · letzter Beitrag vom 3. Okt 2005
Antwort Antwort
Seite 2 von 3     12 3      
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#11
  Alt 8. Jul 2002, 15:24
Hey! Dazu habe ich sogar die passende Dll-Datei! Super danke!
Jetzt habe ich nur ein Problem mit dem Umgang der Funktionen. Ich wollte einfach mal die GetVersion-Funktion aufrufen, aber da kam gleich ein Fehler:

Code:
Form1.Caption := ICQMAPI_API.ICQAPICall_GetVersion(0);
Die normale Funktion lautet:

Code:
function ICQAPICall_GetVersion(var iVersion: integer): BOOL; stdcall;
Ich verstehe den Parameter sowieso nicht, aber irgendwie weiss ich nicht so richtig, wie man mit den Funktionen umgeht. Kennt da jemand Beispiele oder so? Ich möchte zu Beginn einfach mal den Status von ICQ über ein eigenes Programm verändern. Weiss jemand, wie das geht?

Gruß Yheeky
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#12
  Alt 8. Jul 2002, 17:10
Hoi
Das ist einfach, ich hab Code von Wolfskin der den Status und sogar die Away message verändert!!!!
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#13
  Alt 8. Jul 2002, 17:17
Hier ist mal die Unit die Wolfskin erstellt hat, nachdem das einer im DF gefragt hat:
Delphi-Quellcode:
unit ICQAPI;

interface

uses SysUtils, Registry, Windows;

type
  TICQAPICall_SetLicenseKey = function(pszName, pszPassword, pszLicense: PChar): Boolean; stdcall;
  TICQAPICall_SetOwnerState = function (iState: Integer): Boolean; stdcall;

const
  WM_SETTEXT = $000C;

  USER_STATE_ONLINE = 0;
  USER_STATE_CHAT = 1;
  USER_STATE_AWAY = 2;
  USER_STATE_NA
[edit=alcaeus]Delphi-Tags eingefuegt. Mfg, alcaeus[/edit]
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#14
  Alt 8. Jul 2002, 17:36
Danke, der Code funktioniert. Aber in der Unit wird ja überhaupt keine Dll verwendet?! Die Unit arbeitet ja mit der Registry?!
Nichtsdestotrotz interessiert mich, wie ich mit den Funktionen in eienr Dll arbeiten kann, wie ich schon vorher beschrieben habe.
Wäre nett, wenn mir dabei jemand helfen könnte.

Gruß Yheeky
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#15
  Alt 8. Jul 2002, 17:40
Oh da hab ich mich verschaut. Die Dll wird ja geladen...

Aber warum das mit den Funktionen nicht geklappt hat, interessiert mich nach wie vor.

Gruß Yheeky
  Mit Zitat antworten Zitat
Benutzerbild von Mr_T
Mr_T

Registriert seit: 7. Jun 2002
Ort: Eilsum
136 Beiträge
 
Delphi 2005 Personal
 
#16
  Alt 8. Jul 2002, 18:31
Also bei der Funktion

function ICQAPICall_GetVersion(var iVersion: integer): BOOL; stdcall;
aus meiner letzen unit musst du als parameter die integer-variable angeben, in die die versionsnummer geschrieben werden soll (deshalb "var") .... der rückgabewert sagt nur aus, ob das auslesen geklappt hat ....

Ich gebe auf das eben gesagte keine gewähr, aber ich denke, dass es so gehen müsste
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#17
  Alt 8. Jul 2002, 19:39
Achso...cool. Wieder was gelernt Danke!

Ich habe das mal versucht...

Code:
if ICQMAPI_API.ICQAPICall_GetVersion(Variable) = True then
Form1.Caption := 'Yes';
aber in der FormCaption stand nichts ...hab ich das so richtig gemacht?

Gruß Yheeky
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#18
  Alt 14. Jul 2002, 14:03
Hi,

ich versuch´s nochmal hier, auch wenn der Thread vielleicht schon etwas in Vergessenheit geraten ist...

Ich kann mittlerweile den Status und die Message setzen, das ist kein Problem mehr. Jetzt möchte ich aber beides auslesen. Wie geht das?

Gruß Yheeky
  Mit Zitat antworten Zitat
zeeman

Registriert seit: 5. Okt 2003
Ort: Grefrath
3 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: ICQ - API

  Alt 5. Okt 2003, 01:52
Hi!

Freut mich dass ihr es alle hinbekommen habt.
Ich schaff es nur irgendwie nicht.

Das Problem ist nicht das Aufrufen der Funktion, sondern das Ausführen selbiger.
Es scheint so, als wenn er sich nciht an der API anmelden kann.

Ich hab nach eigenen Experimenten eine Unit mit Mr_Ts letzter Unit-zusammenstellung erstellt.
Mein eigenes Code-Versuch sieht so aus:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
micqapi.ICQAPICall_SetLicenseKey('XXX','XXX','XXX');
micqapi.ICQAPICall_SetOwnerState(BICQAPI_USER_STATE_ONLINE);
end;
ICQ ist auch gestartet, nur halt Offline.
Aber verbinden tut er sich nicht.

Leider hab gibt SetLicenseKey ja nix zu rück um zu überprüfen ob man sich erfolreich an der API angemeldet hat.

Hat jemand dazu noch ne Idee?
Ich will ja eigentlich nur meinen Away-Spruch automatisch ändern lassen....

MfG
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von Wuaegner
Wuaegner

Registriert seit: 8. Feb 2004
406 Beiträge
 
Delphi 6 Enterprise
 
#20

Re: ICQ - API

  Alt 1. Okt 2005, 21:46
Kann jemand ein Beispiel Posten wie man per Zugriff auf die ICQMAPI.dll die AwayMessage setzen kann?
Die oben genannten Beispiele z.B GetVersion... klappt bei mir, das heißt ohne Fehlermeldung aber die Funktion gibt immer false zurück.
Wuaegner
Gruß Flo
Unternehmensberatung
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz