Old 22nd December 2004, 13:19   #1
eleet-2k2
Forum King
 
eleet-2k2's Avatar
 
Join Date: Aug 2001
Location: Mobil Ave.
Posts: 5,381
API + External App - is this possibe?

Hello . I've been working on using the Winamp API to control Winamp, however I've got a few questions and I'd like to know if they are possible to be done from an external program (read: not a winamp plugin). Thanks for any and all help, and Happy Holiday!

1) Retrieve the song's artist and title of the currently playing song.
-or-
Retrieving the text in Winamp's scrollbar.

2) Deleting a single item from Winamp's playlist.

3) Playing a file (given the file's path and filename), not enqueueing the file.

I think that's it for now. Thanks again.

"Welcome to the Island of people who know too much."..."Did you really think balloons would stop him?!"
See what I'm listening too.
eleet-2k2 is offline   Reply With Quote
Old 22nd December 2004, 22:03   #2
guav
Junior Member
 
Join Date: Dec 2004
Posts: 8
Quote:
from an external program (read: not a winamp plugin).
All the messages that should work in a plugin only uses pointers. The problem is that a pointer in one process's virtual address space isn't the same pointer in other's.

There's a few techinuqes of "dll injection", using which you can load your dll into another process's virtual address space.

Anyway, why force your code into winamp process using hack methods if you can write a plugin which will be loaded into Winamp by ordinary way ? you can write a plugin and an external app and organize the data exchange between those by WM_COPYDATA.
guav is offline   Reply With Quote
Old 22nd December 2004, 22:07   #3
DrO
 
Join Date: Sep 2003
Posts: 27,873
or you just use the readprocessmemory examples as lay around here and there

helping eleet where possible on irc

-daz
DrO is offline   Reply With Quote
Old 23rd December 2004, 03:21   #4
Joel
Debian user
(Forum King)
 
Joel's Avatar
 
Join Date: Jan 2003
Location: Arch land
Posts: 4,917
I said: put bells on the door when people enters the channel <_<


* PC: Intel Core 2 DUO E6550 @ 2.33 GHz with 2 GB RAM: Archlinux-i686 with MATE.
* Laptop: Intel Core 2 DUO T6600 @ 2.20 GHz with 4 GB RAM: Archlinux-x86-64 with MATE.
Joel is offline   Reply With Quote
Old 2nd January 2005, 08:05   #5
rlevis
Member
 
Join Date: Oct 2000
Posts: 72
Yes, external communication is possible using Windows messages. I downloaded the API some time ago which separated the messages supported by external programs and internal plugins. I've attached the API.

I came here to see if there was an updated API for external apps, but I can't find anything like what I have attached.

Regards,
Ross.
http://www.station*************
Attached Files
File Type: txt winampapi.txt (9.6 KB, 467 views)
rlevis is offline   Reply With Quote
Old 2nd January 2005, 11:29   #6
DrO
 
Join Date: Sep 2003
Posts: 27,873
rlevis: that's the contents of the old page that used to be on nsdn. current stuff is in wa_ipc.h in the sdk

-daz
DrO is offline   Reply With Quote
Old 3rd January 2005, 18:38   #7
CaboWaboAddict
Forum Sot
(Major Dude)
 
CaboWaboAddict's Avatar
 
Join Date: Mar 2004
Location: Marietta, Ga. U.S.A.
Posts: 3,916
Quote:
Originally posted by DrO
or you just use the readprocessmemory examples as lay around here and there
Ok, I used the search button to find readprocessmemory and it came back with no matches. What gives?

Idiot's Advocate
My site (under construction)
CaboWaboAddict is offline   Reply With Quote
Old 10th January 2005, 04:26   #8
jyeee
Junior Member
 
Join Date: Dec 2004
Location: US
Posts: 9
Send a message via ICQ to jyeee Send a message via AIM to jyeee
Torsius' help for non-plugin API:
http://forums.winamp.com/showthread....hlight=torsius
jyeee is offline   Reply With Quote
Old 10th January 2005, 07:04   #9
shaneh
Major Dude
 
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
I think winamp search doesnt search for such long strings. I have posted a readprocessmemory example heeya:

http://forums.winamp.com/showthread....hreadid=171990

Otherwise, you can use my plugin ActiveWinamp for some tricky external programming.

Last edited by shaneh; 10th January 2005 at 07:20.
shaneh is offline   Reply With Quote
Old 10th January 2005, 14:37   #10
CaboWaboAddict
Forum Sot
(Major Dude)
 
CaboWaboAddict's Avatar
 
Join Date: Mar 2004
Location: Marietta, Ga. U.S.A.
Posts: 3,916
Thanks!

Idiot's Advocate
My site (under construction)
CaboWaboAddict is offline   Reply With Quote
Old 11th January 2005, 12:25   #11
saivert
Banned
 
saivert's Avatar
 
Join Date: Jan 2001
Location: Norway
Posts: 927
Using the ActiveWinamp plugin in an external application requires COM and ActiveX programming skills. If you only know how to write straight code lines with simple function calls (a.k.a C style) stick with the ReadProcessMemory Win32 API function. You can also create a thread inside Winamp's process space in order to do the more tricky stuff. You can allocate memory in Winamp's process space using VirtualAllocEx and then writing to it using WriteProcessMemory to pass strings to Winamp.
saivert is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Developer Center > Winamp Development

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump