Media Center - Parte 1
Após tanto tempo sem postar aqui, acho que nada mais justo que postar algo relacionado a um dos principais motivos da minha falta de tempo nos últimos meses: Media Center.
Neste primeiro post apenas darei uma breve introdução sobre programação para Windows Media Center.
Do que você precisa:
O clássico "Hello World":
-No Visual C#, inicie um novo projeto "Media Center Application - Fundamental" e dê o nome de "HelloWorldMC".
-Substitua o Launch.cs pelo código abaixo:
using System.Collections.Generic;
using Microsoft.MediaCenter.Hosting;
namespace HelloWorldMC
{
public class HelloAddIn : IAddInModule, IAddInEntryPoint
{
private static HistoryOrientedPageSession s_session;
public void Initialize(Dictionary<string, object> appInfo, Dictionary<string, object> entryPointInfo)
{
}
public void Uninitialize()
{
}
public void Launch(AddInHost host)
{
/*
* Vamos adicionar o objeto "HelloAddIn" para a lista de par‚metros que deve ser passada
* para o Default.mcml
*/
Dictionary<string, object> parametros = new Dictionary<string, object>();
parametros["HelloAddIn"] = this;
/*
* Aqui chamamos nosso Default.mcml passando as propriedades
*/
s_session = new HistoryOrientedPageSession();
s_session.GoToPage("resx://HelloWorldMC/HelloWorldMC.Resources/Default", parametros);
}
private string fraseHello = "Hello Media Center!";
public string FraseHello
{
get
{
return fraseHello;
}
}
}
}
e Default.mcml pelo código abaixo:
<Mcml xmlns="http://schemas.microsoft.com/2006/mcml"
xmlns:cor="assembly://MSCorLib/System"
xmlns:a="assembly://HelloWorldMC/HelloWorldMC"> <!-- Aqui adicionamos o nosso assembly e o chamamos de 'a' -->
<UI Name="Default">
<Properties>
<Color Name="MyColor" Color="White"/>
<!-- Lembra da lista de par√¢metros? Ent√£o, aqui que recebemos ela. -->
<a:HelloAddIn Name="HelloAddIn" HelloAddIn="$Required"/>
</Properties>
<Locals>
<cor:String Name="MyString" String="[HelloAddIn.FraseHello]"/>
</Locals>
<Rules>
<Default Target="[MyText.Content]" Value="[MyString]"/>
</Rules>
<Content>
<Text Name="MyText" Color="[MyColor]" Font="Calibri, 24"/>
</Content>
</UI>
</Mcml>
-Dê um "Build Solution".
Pronto!! Mentira, não acabou. Para desenvolver para Media Center, tem que seguir uma receita de bolo, e ainda não acabou =)
-Vá nas propriedades do projeto (lá no Solution Explorer, botão direito no HelloWorldMC e clica em properties)
-Clique na aba "Signing"
-Em "Choose a strong name key file", clique em "New"
-Em "key file name", digite qualquer nome, e descheque a opção logo abaixo
-Rebuild Solution
-Pelo prompt, vá no diretório em que a dll do projeto foi gerada e digite: sn -Tp HelloWorldMC.dll
-Copie a Public key token
-No arquivo Registration.xml, substitua "insert_public_key_token_here" pela string copiada e altere title e description para o que desejar
-Ainda no Registration.xml, altere "HelloWorldMC.MyAddIn" para "HelloWorldMC.HelloAddIn"
-Salve tudo e execute o DevInstall.cmd, que está no diretório raiz do projeto
Neste primeiro post apenas darei uma breve introdução sobre programação para Windows Media Center.
Do que você precisa:
O clássico "Hello World":
-No Visual C#, inicie um novo projeto "Media Center Application - Fundamental" e dê o nome de "HelloWorldMC".
-Substitua o Launch.cs pelo código abaixo:
using System.Collections.Generic;
using Microsoft.MediaCenter.Hosting;
namespace HelloWorldMC
{
public class HelloAddIn : IAddInModule, IAddInEntryPoint
{
private static HistoryOrientedPageSession s_session;
public void Initialize(Dictionary<string, object> appInfo, Dictionary<string, object> entryPointInfo)
{
}
public void Uninitialize()
{
}
public void Launch(AddInHost host)
{
/*
* Vamos adicionar o objeto "HelloAddIn" para a lista de par‚metros que deve ser passada
* para o Default.mcml
*/
Dictionary<string, object> parametros = new Dictionary<string, object>();
parametros["HelloAddIn"] = this;
/*
* Aqui chamamos nosso Default.mcml passando as propriedades
*/
s_session = new HistoryOrientedPageSession();
s_session.GoToPage("resx://HelloWorldMC/HelloWorldMC.Resources/Default", parametros);
}
private string fraseHello = "Hello Media Center!";
public string FraseHello
{
get
{
return fraseHello;
}
}
}
}
<Mcml xmlns="http://schemas.microsoft.com/2006/mcml"
xmlns:cor="assembly://MSCorLib/System"
xmlns:a="assembly://HelloWorldMC/HelloWorldMC"> <!-- Aqui adicionamos o nosso assembly e o chamamos de 'a' -->
<UI Name="Default">
<Properties>
<Color Name="MyColor" Color="White"/>
<!-- Lembra da lista de par√¢metros? Ent√£o, aqui que recebemos ela. -->
<a:HelloAddIn Name="HelloAddIn" HelloAddIn="$Required"/>
</Properties>
<Locals>
<cor:String Name="MyString" String="[HelloAddIn.FraseHello]"/>
</Locals>
<Rules>
<Default Target="[MyText.Content]" Value="[MyString]"/>
</Rules>
<Content>
<Text Name="MyText" Color="[MyColor]" Font="Calibri, 24"/>
</Content>
</UI>
</Mcml>
-Dê um "Build Solution".
Pronto!! Mentira, não acabou. Para desenvolver para Media Center, tem que seguir uma receita de bolo, e ainda não acabou =)
-Vá nas propriedades do projeto (lá no Solution Explorer, botão direito no HelloWorldMC e clica em properties)
-Clique na aba "Signing"
-Em "Choose a strong name key file", clique em "New"
-Em "key file name", digite qualquer nome, e descheque a opção logo abaixo
-Rebuild Solution
-Pelo prompt, vá no diretório em que a dll do projeto foi gerada e digite: sn -Tp HelloWorldMC.dll
-Copie a Public key token
-No arquivo Registration.xml, substitua "insert_public_key_token_here" pela string copiada e altere title e description para o que desejar
-Ainda no Registration.xml, altere "HelloWorldMC.MyAddIn" para "HelloWorldMC.HelloAddIn"
-Salve tudo e execute o DevInstall.cmd, que está no diretório raiz do projeto
Agora vá na aba "Mídia Online" e em programas, lá você poderá executar sua recém criada aplicação!
Marcadores: C#, MCML, Media Center, Programação
1 Comentários:
Media Center ?? Nããããããããooo... rs
valeu ai.. agora posso até estudar mais um pouco sobre isso rs..
Postar um comentário
Assinar Postar comentários [Atom]
<< Página inicial