HyperIM - Forums

HyperIM main site
Download HyperIM

Thursday, July 29, 2010, 14:05:04 *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
   Home   Help Login Register  
Pages: [1]   Go Down
  Print  
Author Topic: New: HyperIM 2.12 SDK and plugin sources/examples  (Read 17351 times)
0 Members and 1 Guest are viewing this topic.
Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« on: Thursday, March 30, 2006, 19:27:41 »

So, do you want to make a HyperIM plugin?

What you would need to know:
- how to work with a programming language that supports creating Dynamic Link Libraries (DLL files) for Windows.
- some very basic C/C++ knowledge so you can make use of the SDK file that provides the required constants and data types used by plugins, and also to be able to go through the tutorials (hopefully tutorials written in other programming languages will appear in time).

This thread is dedicated to the latest SDK file and presenting plugin tutorials.
First of all the latest SDK is available for download by clicking this link. It contains the latest header file for HyperIM 2.12, a blank plugin project, and two tutorial plugins:[/b]).

Tutorial 1
This is a very, very, basic plugin that just shows the fundamental part of creating a plugin in C. The only thing it does is displaying a message box of every new status from HyperIM when the new status event occurs.
Includes: plugin source, SDK file, MS Visual C++ 6.0 project file, and Dev-C++ project file. It compiles just fine with both of these.

Tutorial 2
This is a simple plugin that shows how to create and register a macro set that will show up in HyperIM, and how and when you should change their values. You can also learn how to work with a few of the macro-related events.
Includes:
  • plugin source and SDK file
  • MS Visual C++ 6.0 project file, and a Dev-C++ project file. It compiles just fine with both of these.
« Last Edit: Friday, August 17, 2007, 14:41:21 by Codename » Logged



Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #1 on: Monday, June 26, 2006, 19:04:04 »

Crystal Player media info

This plugin was written in MS Visual C++ 6.0. It uses just plain C++ and Windows API, so you should be familiar with these if you expect to understand anything in these source.

You can use this as a base for writing a new "media info" plugin for other players.

Logged



Znupi
Wannabee
Global Moderator
Veteran
******

Karma: +15/-9
Posts: 319

My Other OS is a Linux!


WWW
« Reply #2 on: Wednesday, July 26, 2006, 13:59:01 »

 Shocked Damn you're a genious, what would we have done without you .... Huh??
Logged

Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #3 on: Monday, July 31, 2006, 11:53:29 »

Updated SDK to version 2.0.7

<core> macros plugin source

This is the source code for the <core> macros plugin.
Includes source + IDE projects for MSVC and Dev-C++
« Last Edit: Monday, July 31, 2006, 14:37:10 by Codename » Logged



Ovidiu
HyperIM User - Newbie
Official Beta Tester
Active Member
******

Karma: +1/-2
Posts: 44


« Reply #4 on: Monday, July 31, 2006, 13:37:29 »

unable to compile it. devc++4

[attachment deleted by admin]
Logged

Windows 98 SE, Winamp 2.95, YM 7.5.0.819, 2.0.8

Windows XP SP3, Winamp 5.55, YM 10.0.0.1102, 2.14, Winamp Plugin v4.6
Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #5 on: Monday, July 31, 2006, 14:38:18 »

It worked fine for me using Dev-C++ (4.9.9.2).

Anyway I added the .dev project file, try it now Wink
Logged



Cris
Plugin Developer
Veteran
*******

Karma: +9/-2
Posts: 209


« Reply #6 on: Friday, February 09, 2007, 18:44:24 »

Where can I get the new SDK from? (with icon support)
Logged


The green image is powered by HyperIM, XMPlay and MiniLyrics
Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #7 on: Saturday, February 10, 2007, 18:25:01 »

Where can I get the new SDK from? (with icon support)
I just updated the SDK archive.
Logged



Cris
Plugin Developer
Veteran
*******

Karma: +9/-2
Posts: 209


« Reply #8 on: Saturday, February 10, 2007, 19:47:11 »

I think there might be an error in a comment in the new SDK

Code:
typedef struct _himRegisterMacros {
...
HBITMAP hBmp ;                // a pretty image that stands near the name. Requires (flags & 0x01)
        ...

} HIMREGISTERMACROS ;

Shouldn't it require the 0x10 flag?

EDIT: Never mind, I didn't see the BYTE flags ; line Cheesy
But I can't make the Bitmap work. I added:
Code:
    this->hRM.flags = 0x01;
    this->hRM.hBmp = reinterpret_cast<HBITMAP>(IDB_BITMAP);
before registering the macros, but there's no bitmap in the menu. The icon works fine.
« Last Edit: Saturday, February 10, 2007, 20:17:40 by Cris » Logged


The green image is powered by HyperIM, XMPlay and MiniLyrics
Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #9 on: Saturday, February 10, 2007, 21:21:27 »

But I can't make the Bitmap work. I added:
Code:
    this->hRM.flags = 0x01;
    this->hRM.hBmp = reinterpret_cast<HBITMAP>(IDB_BITMAP);
before registering the macros, but there's no bitmap in the menu. The icon works fine.
Sorry, it wasn't very clear, you need to load it yourself, for example like below.
Code:
// HIMREGISTERMACROS hRM ;
hRM.flags = 0x01 ;
hRM.hBmp = (HBITMAP) LoadImage (himPluginDll.hInstance,
MAKEINTRESOURCE(IDB_BITMAPX),
IMAGE_BITMAP,
GetSystemMetrics (SM_CXMENUCHECK),
GetSystemMetrics (SM_CYMENUCHECK),
LR_LOADTRANSPARENT);
// register macro set
result = pKernel (HIMK_REGISTERMACROS, &hRM) ;
Logged



Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #10 on: Sunday, February 25, 2007, 19:29:58 »

I have updated the SDK file (aka plugin.h) to reflect the plugin tooltip feature introduced in HyperIM 2.12
Logged



Cris
Plugin Developer
Veteran
*******

Karma: +9/-2
Posts: 209


« Reply #11 on: Thursday, November 01, 2007, 11:16:33 »

For HIM 2.13 do I need to get a new SDK, or I just change everything from char to Unicode?
If I need a new SDK, where do I get it from?
Logged


The green image is powered by HyperIM, XMPlay and MiniLyrics
Codename
HyperIM Programmer
Plugin Developer
Veteran
*******

Karma: +70/-61
Posts: 936


Now you know what a hypercube means


WWW
« Reply #12 on: Thursday, November 01, 2007, 11:23:13 »

I think you wanted to say "for HIM 2.20" maybe?

First of all, the easiest way is ti create a new configuration based on the "Release" settings, and just replace form the project settings -> C++ the default defined _MBCS with _UNICODE,UNICODE

And ofcourse use the _T() routine on all your strings...
Logged



simslim
Passive Member


Karma: +0/-0
Posts: 1


« Reply #13 on: Monday, November 12, 2007, 23:32:21 »

id like to start learning, but i just started a week ago learning C#, not C++, is there any tutorial availeble for it too?
and is it possible to read addresses out of the memory of another program?
thanks alot
Logged
Pages: [1]   Go Up
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
Page created in 0.087 seconds with 20 queries.