|
Hello
I've a task to develop an utility that could write an msg file from scratch without using any mapi libraries. This limitation is strict, unfortunately.
So I've studied the structure of the compound file, the red-black trees, etc.
Now I'm trying to make a file with a message. I've copied all the streams that outlook writes to its draft message file. What I need to do is to "attach" a node to this streams tree that would be a storage for the recipient. Moreover, I set the "DisplayTo" stream value. However, when I open the file and move the mouse to the email address in the "To:" form, the recipient's email disappears. I suppose that I've missed something when I was adding the recipient container (a red-black tree with 7 nodes) to the global tree.
I'd like to find out what actions should be made when the recipient is added to the message.
|
|
|
|
|
I was wondering if there is a way to receive the "Now Playing" song information from my media player like the MSN Messenger does.
Note: I'm not using the Windows Media Player.
How does the MSN Messenger receive the "Now Playing" information?
|
|
|
|
|
Well what media player are you using?
I suspect MSN Messenger would first detect the media player being used and then access the information with the approriate api. AFAIK there is no 'system variable' for a song that is being played irrespective of the media player
Life goes very fast. Tomorrow, today is already yesterday.
|
|
|
|
|
I'm using The KMPlayer ...
There is an option called "Enable 'Now Playing' feature for MSN messenger", therefore I assume that there is some player-independent mechanism.
|
|
|
|
|
you could look at this[^] it doesnt give much but there are some links you can view if your a member, maybe its worth a sign-up for you, but not for me lol
Life goes very fast. Tomorrow, today is already yesterday.
|
|
|
|
|
I understand that there is something player independent to "broadcast" the "Now playing" information (?), which The KMPlayer as well as the Windows Media Player incoporate. Perhaps WinAMP and other players too. My application should be independent from the underlying player as well.
But thanks for the link anyway, I think I'm going to register ...
Another thought: Can I somehow simulate the part of the MSN-Messenger to which the "now playing" information is send (but without interfering with the original msn messenger)?
|
|
|
|
|
The Media Player is the program responsible for changing the status-text, if I'm not mistaken. There are some guides on writing an MSN-plugin, I believe that the example from the Live-Services even can be used to change the statustext.
Anyway, scroll down to the method "SetMSNMusic" on this[^] page for an example implementation. There's a blog about live messenger addins here[^]
I are troll
|
|
|
|
|
I do no want to write MSN-plugins.
I rather want to have a method "SetMyAppMusic" instead of the method "SetMSNMusic" ...
So how can I "redirect" the SetMSNMusic to my application.
|
|
|
|
|
The message linked to pointed it out. Create a CopyDataStruct, fill it with a magic number of some form, insert a pointer to some specially formatted data and use SendMessage to send it to the MSN messenger window
|
|
|
|
|
give.away wrote: I do no want to write MSN-plugins.
So you want the other way around? Have your application retrieve the name of the song that is currently playing in the KMPlayer?
I are troll
|
|
|
|
|
Exactly!
To make it perfectly clear: I think KMPlayer and Windows Media Player use the same means to "publish" the song info ... I wonder how I can get the info and display it in my app.
modified on Monday, March 30, 2009 9:28 AM
|
|
|
|
|
|
I don't want to write a plugin for the media player either. Especially since it is not necessary.
Let's say: I just want to know how the "now playing" thing works from a theoretical point of view.
I accept that not all players would be supported, but I know for a fact, that it would work for WMP and KMP (there are applications out there for which this works).
So again: What mechanism is used?
Thanks so far!
|
|
|
|
|
give.away wrote: Let's say: I just want to know how the "now playing" thing works from a theoretical point of view.
There is a theoretical player, let's call it "P". This "P" supports plugins. Someone writes a theoretical plugin that sucks up the theoretical songname thats playing in the theoretical player. It then sends this string to some other application, to form some sort of client-server relation between two previously unrelated applications
give.away wrote: So again: What mechanism is used?
Mostly plugin type, but sometimes these new functionalities are being built as custom scripts[^]. Good idea's tend to spread and sometimes make it to be included in a final product.
give.away wrote: Thanks so far!
You're welcome
I are troll
|
|
|
|
|
I want C# code.
I do not want to write or use plugins.
Given a theoretical player P', which has the same mechanism as the Windows Media Player to publish "now playing song information". How would an appliction's code look like to receive the information published by P'?
I hope this clearifies my request.
|
|
|
|
|
give.away wrote: I want C# code.
Write it, or search until you got something that does what you want.
give.away wrote: How would an appliction's code look like to receive the information published by P'?
There isn't an event that you can 'just' hook into. Sorry to say it, but it ain't that simple - this would depend on the "publishing"-mechanism provided by application A. What works with KMPlayer will not neccesarily work with WinAmp or Media Player.
I are troll
|
|
|
|
|
Eddy Vluggen wrote: Write it, or search until you got something that does what you want.
You see, if I could write it or if I was able to find it somewhere else, I wouldn't bother to post at this board.
Eddy Vluggen wrote: There isn't an event that you can 'just' hook into.
Do you know that for a fact?
If it is not done by hooking into it, how is it done?
And to remind you: I know almost certainly, that KMP and WMP employ the same mechanism. And there are applications out there which work with many different players ...
Thank you for your patience!
|
|
|
|
|
give.away wrote: You see, if I could write it or if I was able to find it somewhere else, I wouldn't bother to post at this board.
See point two over here[^].
give.away wrote: Do you know that for a fact?
Ah, no. I wasn't on the development team of the Media Player, the KMPlayer, nor Messenger. I have only written a small plugin for the Live Messenger, nothing fancy
give.away wrote: If it is not done by hooking into it, how is it done?
That depends on the imagination of the programmer, I have already described some technique's that may be used to achieve this.
give.away wrote: And to remind you: I know almost certainly, that KMP and WMP employ the same mechanism. And there are applications out there which work with many different players ...
They just might have written code for lots of different players. Same thing is often done for Office; most interop-articles are based on a single version of Office. So, if you want to support multiple versions - you'll be writing multiple pieces of the code.
give.away wrote: Thank you for your patience!
No problem
I are troll
|
|
|
|
|
Eddy Vluggen wrote: See point two over here[^].
Unfortunately I fail to see why my question is unspecific, but nevertheless I try to rephrase it in a more specific way:
How can I acquire the song information of the currently playing song in KMP and WMP?
Note: The KMP seems to employ or simulate the same publishing method than the WMP.
Note: I don't want to write a plugin for KMP/WMP etc.. I want to use existing functionality.
Eddy Vluggen wrote: That depends on the imagination of the programmer, I have already described some techniques that may be used to achieve this.
Could you be more specific there: I was not asking for a general approach of how applications can communicate, but specifically for WMP(-like) players. Is there a documentation of how the WMP publishes the song information? Code snippets? Something else?
If something is unspecific to you, just ask and I'm going to provide more information (if possible).
|
|
|
|
|
Based on your answers, I'll have to deduce that I'm unable to help you. That's not due to your questions, but rather my way of reading and answering those questions. You want to know how to build some functionality - and there are lots of possible answers.
give.away wrote: Could you be more specific there
I can't, as not all the music-players work in the same way.
give.away wrote: Is there a documentation of how the WMP publishes the song information?
It doesn't 'publish' it - A music player doesn't need to tell the computer what it is playing right now, just like MS-Word doesn't tell everyone what kind of file it is editing. There are alternatives available, as you can read here[^].
I are troll
|
|
|
|
|
Greetings
I'm using Crystal Reports basic that comes with VS 2008.
I have put 3 (text objects) columns (e.g. ID Name Address), what I want is to add rows, variable numbers of rows of course.
Is there a way to do that by creating parameters ? if not, what other ways are there ?
Regards
|
|
|
|
|
You have to give it a record set. I haven't played with the crystal version that comes with 2008 so I can't give you step by step, however it also depends on where your rows of data are coming from. Is it a database or just data you have in some structure in your program? One way or another the data needs to end up in a record set of a type that Crystal can read. Then you just assign the recordset object or pass in an sql so Crystal can go to work on it.
The true man wants two things: danger and play. For that reason he wants woman, as the most dangerous plaything.
|
|
|
|
|
I have no problem in using a dataset in this case, but the problem is that I can't figure out how to do it programmatically (I don't need the wizard)
Am I missing something obvious ?
Regards
|
|
|
|
|
You mean like this Here[^]
|
|
|
|
|
No. This depends on an already created parameter (using the Field Explorer) at build time.
What I want is to *create* this parameter at runtime.
|
|
|
|