Ver Mensaje Individual
  #6  
Antiguo 12-02-2009
Avatar de Black_Ocean
Black_Ocean Black_Ocean is offline
Miembro
 
Registrado: nov 2006
Posts: 128
Reputación: 18
Black_Ocean Va por buen camino
Cool

He hecho un pequeño ejemplo de como instalar contenidos utilizando la API de Messenger en cuentas de usuarios de Windows Live Messenger abiertas en el PC (en este caso, instalaremos emoticonos)

IMPORTANTE!!! Recuerden que antes de hacer todo esto, tienen que extraer la librería .TLB número 7 del ejecutable msnmsgr.exe como lo expliqué en el post #5 de este tema e importala en su IDE de Delphi. No se les vaya a olvidar :P

Primer paso: Crear un archivo content.xml con el bloc de notas con estas características (importante que vean y lean detenidamente la estructura del archivo .xml para entenderlo):

Código:
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://messenger.msn.com/messengercontent/1.0" version="1.0" type="theme">
  <item xmlns="" xmlns:emoticon="http://messenger.msn.com/emoticon/1.0" contentid="ConCon1" contenttype="P" type="emoticon" emoticon:namespaceprefix="Untitled" mimetype="image/gif" file="emo1.gif" emoticon:displayname="emo_1" emoticon:keysequence="emo_1"/>
  <item xmlns="" xmlns:emoticon="http://messenger.msn.com/emoticon/1.0" contentid="ConCon2" contenttype="P" type="emoticon" emoticon:namespaceprefix="Untitled" mimetype="image/gif" file="emo2.gif" emoticon:displayname="emo_2" emoticon:keysequence="emo_2"/>
</package>
Segundo paso: Crear un archivo .CAB que contenga el archivo content.xml más los dos archivos .gif que especifiqué en el archivo .xml (emo1.gif y emo2.gif). Pueden incluir más archivos .GIF si es que lo requieren, pero con cada archivo .GIF que agreguen deberán también especificarlo en el archivo .XML como lo señalé en el primer paso (para crear paquetes .CAB, bajar la utilidad que se llama Cab Maker v2.0)

Tercer paso: Subir el archivo .CAB a un servidor HTTP para que pueda ser descargado porsteriormente.

Cuarto paso: Como ejemplo, crear un nuevo proyecto en delphi con un formulario y un botón. En el evento OnClick del botón insertar el siguiente código (fijarse en la declaración del USES de la implementación y en el método del evento OnClick del botón, que no se les olvide ):

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses
  MessengerContentInstallerLibrary_TLB;

procedure TForm1.Button1Click(Sender: TObject);
var
  IMessCont: MessengerContentInstaller;
begin
  IMessCont := MessengerContentInstaller(CoMessengerContentInstaller.Create);
  IMessCont.InstallContent('http://www.miservidor.com/archivo.CAB');
end;

end.

Quinto paso: con una cuenta activa y abierta en Windows Live Messenger, ejecutar el proyecto y apretar en el botón del formulario verán que los emoticonos del archivo .CAB que creamos y subimos a internet se habrán agregado en la sesión de mensajería actual que este abierta de Windows Live Messenger

He dejado adjunto a este post un archivo .CAB de ejemplo para que hagan pruebas ustedes mismos (le he cambiado la extensión a .zip porque ClubDelphi no acepta archivos con extensión .cab adjuntos. Cuando lo bajen, cámbiar la extensión a .CAB)


Cordiales saludos!!!
Archivos Adjuntos
Tipo de Archivo: zip archivo.zip (7,9 KB, 29 visitas)

Última edición por Black_Ocean fecha: 13-02-2009 a las 20:18:06.
Responder Con Cita