From: <fr...@us...> - 2007-01-31 21:34:52
|
Revision: 67 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=67&view=rev Author: framug Date: 2007-01-31 13:34:49 -0800 (Wed, 31 Jan 2007) Log Message: ----------- Add MultiShortcut plugin (tested, it works), enjoy ;) Added Paths: ----------- trunk/plugins/MultiShortcut/ trunk/plugins/MultiShortcut/DLLFix/ trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj trunk/plugins/MultiShortcut/DLLFix/Program.cs trunk/plugins/MultiShortcut/DLLFix/Properties/ trunk/plugins/MultiShortcut/DLLFix/Properties/AssemblyInfo.cs trunk/plugins/MultiShortcut/DLLFix/bin/ trunk/plugins/MultiShortcut/DLLFix/bin/Release/ trunk/plugins/MultiShortcut/DLLFix/bin/Release/AxInterop.WMPLib.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/Bass.Net.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/BassRegistration.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/Core.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/DLLFix.exe trunk/plugins/MultiShortcut/DLLFix/bin/Release/DLLFix.pdb trunk/plugins/MultiShortcut/DLLFix/bin/Release/Databases.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/Dialogs.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/DirectShowLib.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/ICSharpCode.SharpZipLib.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/Interop.SHDocVw.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/Interop.WMPLib.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/MediaPortal.Support.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/MediaPortal.Support.pdb trunk/plugins/MultiShortcut/DLLFix/bin/Release/MultiShortcut00.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/MultiShortcut00.pdb trunk/plugins/MultiShortcut/DLLFix/bin/Release/Utils.dll trunk/plugins/MultiShortcut/DLLFix/bin/Release/edtftpnet-1.2.2.dll trunk/plugins/MultiShortcut/MultiButton.sln trunk/plugins/MultiShortcut/MultiButton.suo trunk/plugins/MultiShortcut/MultiShortcut/ trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs trunk/plugins/MultiShortcut/MultiShortcut/Config.cs trunk/plugins/MultiShortcut/MultiShortcut/Config.resx trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj trunk/plugins/MultiShortcut/MultiShortcut/Properties/ trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs trunk/plugins/MultiShortcut/MultiShortcut/bin/ trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/ trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/AxInterop.WMPLib.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Bass.Net.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/BassRegistration.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Core.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Databases.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Dialogs.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/DirectShowLib.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/ICSharpCode.SharpZipLib.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Interop.SHDocVw.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Interop.WMPLib.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MediaPortal.Support.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MediaPortal.Support.pdb trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MultiShortcut00.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MultiShortcut00.pdb trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Utils.dll trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/edtftpnet-1.2.2.dll trunk/plugins/MultiShortcut/TestServer/ trunk/plugins/MultiShortcut/TestServer/Program.cs trunk/plugins/MultiShortcut/TestServer/Properties/ trunk/plugins/MultiShortcut/TestServer/Properties/AssemblyInfo.cs trunk/plugins/MultiShortcut/TestServer/TestServer.csproj trunk/plugins/MultiShortcut/TestServer/bin/ trunk/plugins/MultiShortcut/TestServer/bin/Release/ trunk/plugins/MultiShortcut/TestServer/bin/Release/AxInterop.WMPLib.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/Bass.Net.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/BassRegistration.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/Core.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/Databases.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/Dialogs.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/DirectShowLib.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/ICSharpCode.SharpZipLib.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/Interop.SHDocVw.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/Interop.WMPLib.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/MediaPortal.Support.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/MediaPortal.Support.pdb trunk/plugins/MultiShortcut/TestServer/bin/Release/MultiShortcut00.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/MultiShortcut00.pdb trunk/plugins/MultiShortcut/TestServer/bin/Release/TestServer.exe trunk/plugins/MultiShortcut/TestServer/bin/Release/TestServer.pdb trunk/plugins/MultiShortcut/TestServer/bin/Release/Utils.dll trunk/plugins/MultiShortcut/TestServer/bin/Release/edtftpnet-1.2.2.dll Added: trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj =================================================================== --- trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj (rev 0) +++ trunk/plugins/MultiShortcut/DLLFix/DLLFix.csproj 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,57 @@ +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProductVersion>8.0.50727</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}</ProjectGuid> + <OutputType>Exe</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>DLLFix</RootNamespace> + <AssemblyName>DLLFix</AssemblyName> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <DebugSymbols>true</DebugSymbols> + <DebugType>full</DebugType> + <Optimize>false</Optimize> + <OutputPath>bin\Debug\</OutputPath> + <DefineConstants>DEBUG;TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <ItemGroup> + <Reference Include="Core, Version=1.0.2587.38185, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\MediaPortal\Core\bin\Release\Core.dll</HintPath> + </Reference> + <Reference Include="System" /> + <Reference Include="System.Data" /> + <Reference Include="System.Xml" /> + </ItemGroup> + <ItemGroup> + <Compile Include="Program.cs" /> + <Compile Include="Properties\AssemblyInfo.cs" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\MultiShortcut\MultiShortcut.csproj"> + <Project>{7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}</Project> + <Name>MultiShortcut</Name> + </ProjectReference> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + Other similar extension points exist, see Microsoft.Common.targets. + <Target Name="BeforeBuild"> + </Target> + <Target Name="AfterBuild"> + </Target> + --> +</Project> \ No newline at end of file Added: trunk/plugins/MultiShortcut/DLLFix/Program.cs =================================================================== --- trunk/plugins/MultiShortcut/DLLFix/Program.cs (rev 0) +++ trunk/plugins/MultiShortcut/DLLFix/Program.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,96 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Reflection; + +using MediaPortal.MultiShortcut; + +namespace DLLFix +{ + class Program + { + const int fixStart = 11290; + + static void Main(string[] args) + { + + byte[] search_bytes = new byte[] + { + 0x52, 0x75, 0x6E, 0x74, 0x69, 0x6D, 0x65, 0x43, + 0x6F, 0x6D, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, + 0x6C, 0x69, 0x74, 0x79, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x00, 0x4D, 0x75, + 0x6C, 0x74, 0x69, 0x53, 0x68, 0x6F, 0x72, 0x74, + 0x63, 0x75, 0x74 + }; + + byte fileCounter = 0; + + string myPath = System.Reflection.Assembly.GetExecutingAssembly().Location; + myPath = myPath.Substring(0, myPath.LastIndexOf('\\')); + + string[] files = Directory.GetFiles(myPath, "*.dll"); + + Console.WriteLine("*******************************************************"); + Console.WriteLine("** **"); + Console.WriteLine("** MultiShortcut DLL fix (.net metadata changer) **"); + Console.WriteLine("** **"); + Console.WriteLine("*******************************************************"); + Console.WriteLine(""); + Console.WriteLine("1.) Patching files...\n"); + foreach (string s in files) + { + using (Stream st = new FileStream(s, FileMode.Open, FileAccess.ReadWrite)) + { + int offset = 0; + long file_pos = 0; + int bytes_read = 0; + byte[] buffer = new byte[65536]; + + bool match = false; + + while ((bytes_read = st.Read(buffer, offset, buffer.Length - offset)) > 0 && !match) + { + for (int i = 0; i < bytes_read + offset - search_bytes.Length; i++) + { + match = true; + + for (int j = 0; j < search_bytes.Length; j++) + { + if (search_bytes[j] != buffer[i + j]) + { + match = false; + break; + } + } + + if (match) + { + st.Seek(file_pos + i - offset + search_bytes.Length, SeekOrigin.Begin); + byte[] replaceBuffer = new byte[] { (Byte)(48 + (fileCounter > 9 ? ((int)fileCounter / 10) : 0)), (Byte)(48 + ((int)fileCounter % 10)) }; + st.Write(replaceBuffer, 0, replaceBuffer.Length); + Console.WriteLine(" - PATCHED: {0}",s.Substring(s.LastIndexOf('\\')+1)); + break; + } + } + + file_pos = st.Position; + + offset = search_bytes.Length; + for (int i = 0; i < offset; i++) + { + buffer[i] = buffer[buffer.Length - offset + i]; + } + } + + } + fileCounter++; + } + + Console.WriteLine("\n2.) Done."); + Console.WriteLine("\n3.) Press Enter to close..."); + Console.ReadKey(); + } + } +} Added: trunk/plugins/MultiShortcut/DLLFix/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/MultiShortcut/DLLFix/Properties/AssemblyInfo.cs (rev 0) +++ trunk/plugins/MultiShortcut/DLLFix/Properties/AssemblyInfo.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,33 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("DLLFix")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("lr-software")] +[assembly: AssemblyProduct("DLLFix")] +[assembly: AssemblyCopyright("Copyright © lr-software 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("351bc816-4ecd-4da5-b4fb-a8af512fec21")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/AxInterop.WMPLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/AxInterop.WMPLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Bass.Net.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Bass.Net.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/BassRegistration.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/BassRegistration.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Core.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Core.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/DLLFix.exe =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/DLLFix.exe ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/DLLFix.pdb =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/DLLFix.pdb ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Databases.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Databases.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Dialogs.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Dialogs.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/DirectShowLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/DirectShowLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/ICSharpCode.SharpZipLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/ICSharpCode.SharpZipLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Interop.SHDocVw.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Interop.SHDocVw.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Interop.WMPLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Interop.WMPLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MediaPortal.Support.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MediaPortal.Support.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MediaPortal.Support.pdb =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MediaPortal.Support.pdb ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MultiShortcut00.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MultiShortcut00.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MultiShortcut00.pdb =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/MultiShortcut00.pdb ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Utils.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/Utils.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/DLLFix/bin/Release/edtftpnet-1.2.2.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/DLLFix/bin/Release/edtftpnet-1.2.2.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiButton.sln =================================================================== --- trunk/plugins/MultiShortcut/MultiButton.sln (rev 0) +++ trunk/plugins/MultiShortcut/MultiButton.sln 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,32 @@ + +Microsoft Visual Studio Solution File, Format Version 9.00 +# Visual Studio 2005 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestServer", "TestServer\TestServer.csproj", "{D2159E0B-44FA-41D8-B701-081D2C931CC0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultiShortcut", "MultiShortcut\MultiShortcut.csproj", "{7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DLLFix", "DLLFix\DLLFix.csproj", "{8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {D2159E0B-44FA-41D8-B701-081D2C931CC0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D2159E0B-44FA-41D8-B701-081D2C931CC0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D2159E0B-44FA-41D8-B701-081D2C931CC0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D2159E0B-44FA-41D8-B701-081D2C931CC0}.Release|Any CPU.Build.0 = Release|Any CPU + {7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}.Release|Any CPU.Build.0 = Release|Any CPU + {8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8EDA7E5D-E56B-486E-BFB3-DB3A47733E39}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal Added: trunk/plugins/MultiShortcut/MultiButton.suo =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiButton.suo ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs (rev 0) +++ trunk/plugins/MultiShortcut/MultiShortcut/Config.Designer.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,90 @@ +namespace MediaPortal.MultiShortcut +{ + partial class Config + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.propertyGrid1 = new System.Windows.Forms.PropertyGrid(); + this.button1 = new System.Windows.Forms.Button(); + this.button2 = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // propertyGrid1 + // + this.propertyGrid1.HelpVisible = false; + this.propertyGrid1.Location = new System.Drawing.Point(12, 12); + this.propertyGrid1.Name = "propertyGrid1"; + this.propertyGrid1.Size = new System.Drawing.Size(270, 383); + this.propertyGrid1.TabIndex = 0; + this.propertyGrid1.ToolbarVisible = false; + // + // button1 + // + this.button1.DialogResult = System.Windows.Forms.DialogResult.OK; + this.button1.Location = new System.Drawing.Point(126, 401); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 23); + this.button1.TabIndex = 1; + this.button1.Text = "&Save"; + this.button1.UseVisualStyleBackColor = true; + // + // button2 + // + this.button2.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.button2.Location = new System.Drawing.Point(207, 401); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 23); + this.button2.TabIndex = 2; + this.button2.Text = "Cancel"; + this.button2.UseVisualStyleBackColor = true; + // + // Config + // + this.AcceptButton = this.button1; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.AutoSize = true; + this.CancelButton = this.button2; + this.ClientSize = new System.Drawing.Size(295, 434); + this.ControlBox = false; + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Controls.Add(this.propertyGrid1); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Name = "Config"; + this.Text = "MultiShortcut Configuration"; + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.PropertyGrid propertyGrid1; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button button2; + } +} \ No newline at end of file Added: trunk/plugins/MultiShortcut/MultiShortcut/Config.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Config.cs (rev 0) +++ trunk/plugins/MultiShortcut/MultiShortcut/Config.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; + +namespace MediaPortal.MultiShortcut +{ + public partial class Config : Form + { + public Config() + { + InitializeComponent(); + } + + public void SetPropertyGrid(object o) + { + propertyGrid1.SelectedObject = o; + } + + } +} \ No newline at end of file Added: trunk/plugins/MultiShortcut/MultiShortcut/Config.resx =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Config.resx (rev 0) +++ trunk/plugins/MultiShortcut/MultiShortcut/Config.resx 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> +</root> \ No newline at end of file Added: trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs (rev 0) +++ trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,375 @@ +// THIS IS NOTHING MORE THAN A HACK! +using System; +using System.Collections.Generic; +using System.Text; +using System.Diagnostics; +using System.Reflection; +using System.IO; +using System.Runtime.InteropServices; +using System.Threading; + +using System.ComponentModel; + +using MediaPortal.GUI.Library; +using MediaPortal.Dialogs; +using MediaPortal.Util; + +namespace MediaPortal.MultiShortcut +{ + public class MultiShortcut: GUIWindow, ISetupForm, IShowPlugin + { + #region ISetupForm Members + + protected internal int m_ID = -1; + protected internal string m_Name = String.Empty; + + protected internal string m_ExeFile = String.Empty; + protected internal string m_ProgFile = String.Empty; + protected internal string m_Arguments = String.Empty; + + protected internal string m_Picture = String.Empty; + protected internal string m_ButtonImg = String.Empty; + protected internal string m_ButtonImgF = String.Empty; + protected internal string m_Caption = String.Empty; + protected internal bool m_HandleMPWindow = false; + + int m_MP_WindowHWND = 0; + + public MultiShortcut() + { + m_Name = System.Reflection.Assembly.GetExecutingAssembly().Location; + string[] nameParts = m_Name.Split('\\'); + m_Name = nameParts[nameParts.Length - 1]; + nameParts = m_Name.Split('.'); + if (nameParts.Length > 0) + { + m_Name = nameParts[0]; + m_ID = FindID(ref m_Name); + } + + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MediaPortal.xml")) + { + m_ExeFile = xmlreader.GetValueAsString(m_Name, "exefile", string.Empty); + m_Arguments = xmlreader.GetValueAsString(m_Name, "arguments", string.Empty); + m_Picture = xmlreader.GetValueAsString(m_Name, "picture", string.Empty); + m_ButtonImg = xmlreader.GetValueAsString(m_Name, "buttonimage", string.Empty); + m_ButtonImgF = xmlreader.GetValueAsString(m_Name, "buttonimagefocus", string.Empty); + m_Caption = xmlreader.GetValueAsString(m_Name, "caption", string.Empty); + m_ID = xmlreader.GetValueAsInt(m_Name, "pluginid", -1); + m_HandleMPWindow = xmlreader.GetValueAsInt(m_Name, "handlempwindow", 1) == 0; + + if (m_ExeFile.Length > 0) + { + string[] parts = m_ExeFile.Split('\\'); + if (parts.Length > 0) m_ProgFile = parts[parts.Length - 1]; + } + } + + if (m_ID < 0) + { + List<int> lst = new List<int>(25); + + foreach (object o in PluginManager.GUIPlugins) + lst.Add(((ISetupForm)o).GetWindowId()); + + foreach (object o in PluginManager.NonGUIPlugins) + lst.Add(((ISetupForm)o).GetWindowId()); + + foreach (object o in PluginManager.WakeablePlugins) + lst.Add(((ISetupForm)o).GetWindowId()); + + Random rd = new Random((int)DateTime.Now.Ticks); + int id = rd.Next(1000, 9000); + while (IsInList(lst, id)) id = rd.Next(1000,9000); + + m_ID = id; + } + + using (MediaPortal.Profile.Settings xmlwrite = new MediaPortal.Profile.Settings("MediaPortal.xml")) + { + xmlwrite.SetValue(m_Name, "pluginid", m_ID); + } + } + + private bool IsInList(List<int> lst, int id) + { + foreach(int i in lst) + if (i == id) return true; + + return false; + } + + private int FindID(ref string name) + { + int i = name.LastIndexOf('_'); + if (i < 0) + return -1; + else + { + try + { + int newID = Convert.ToInt32(name.Substring(i + 1)); + name = name.Substring(0, i); + return newID; + } + catch (Exception e) + { +//fmu Log.Write(e); + Log.Error(e); + return -1; + } + } + } + + public string Author() + { + return "kuerb"; + } + + public bool CanEnable() + { + return true; + } + + public bool DefaultEnabled() + { + return true; + } + + public string Description() + { + return "Adds button to homepage (dynamic id!)"; + } + + public bool GetHome(out string strButtonText, out string strButtonImage, out string strButtonImageFocus, out string strPictureImage) + { + strButtonText = m_Caption.Length > 0 ? m_Caption : "-no name-"; + strButtonImage = m_ButtonImg; + strButtonImageFocus = m_ButtonImgF; + strPictureImage = m_Picture; + return true; + } + + public int GetWindowId() + { + return m_ID; + } + + public bool HasSetup() + { + return true; + } + + public string PluginName() + { + return String.Format(m_Name); + } + + public void ShowPlugin() + { + Config cf = new Config(); + cf.SetPropertyGrid(new ConfigWrapper(this)); + + + if (cf.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + using (MediaPortal.Profile.Settings xmlwrite = new MediaPortal.Profile.Settings("MediaPortal.xml")) + { + xmlwrite.SetValue(m_Name, "exefile", m_ExeFile); + xmlwrite.SetValue(m_Name, "arguments", m_Arguments); + xmlwrite.SetValue(m_Name, "picture", m_Picture); + xmlwrite.SetValue(m_Name, "buttonimage", m_ButtonImg); + xmlwrite.SetValue(m_Name, "buttonimagefocus", m_ButtonImgF); + xmlwrite.SetValue(m_Name, "caption", m_Caption); + xmlwrite.SetValue(m_Name, "pluginid", m_ID); + xmlwrite.SetValue(m_Name, "handlempwindow", m_HandleMPWindow ? 0 : 1); + } + } + } + + #endregion + + #region GUIWindow + + public override int GetID + { + get { return m_ID; } + set {} + } + + public override bool Init() + { + return false; + } + + protected override void OnPageLoad() + { + + if (m_ExeFile == string.Empty || !File.Exists(m_ExeFile)) + { + GUIDialogOK dlg = (GUIDialogOK)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_OK); + dlg.SetHeading("Could not start program!"); + dlg.SetLine(1, String.Format("ConfigSection: [{0}]",m_Name)); + dlg.DoModal(GUIWindowManager.ActiveWindow); + } + else + RunProgram(m_ExeFile, m_Arguments); + + GUIWindowManager.ShowPreviousWindow(); + } + + private void RunProgram(string exeName, string argsLine) + { + ProcessStartInfo psI = new ProcessStartInfo(exeName, argsLine); + Process newProcess = new Process(); + + try + { + newProcess.StartInfo.FileName = exeName; + newProcess.StartInfo.Arguments = argsLine; + newProcess.StartInfo.UseShellExecute = true; + newProcess.EnableRaisingEvents = true; + if (newProcess.Start()) + { + if (m_HandleMPWindow) + { + m_MP_WindowHWND = Win32Wrapper.FindWindow(null, "MediaPortal - "); + if (m_MP_WindowHWND > 0) + { + Win32Wrapper.ShowWindow(m_MP_WindowHWND, Win32Wrapper.SW_HIDE); + /* next two lines not yet need. + Thread.Sleep(2000); + Win32Wrapper.SetWindowPos(newProcess.MainWindowHandle, Win32Wrapper.HWND_TOPMOST, 0, 0, 0, 0, Win32Wrapper.SWP_NOSIZE | Win32Wrapper.SWP_NOMOVE); + */ + newProcess.Exited += new EventHandler(newProcess_Exited); + } + } + } + + } + catch (Exception e) + { + throw e; + } + } + + void newProcess_Exited(object sender, EventArgs e) + { + Win32Wrapper.ShowWindow(m_MP_WindowHWND, Win32Wrapper.SW_SHOWDEFAULT); + } + + #endregion + + #region IShowPlugin Members + + public bool ShowDefaultHome() + { + return true; + } + + #endregion + } + + internal class ConfigWrapper + { + MultiShortcut m_MS = null; + + public ConfigWrapper(MultiShortcut ms) + { + m_MS = ms; + } + + [Category("Program")] + public string Exefile + { + get { return m_MS.m_ExeFile; } + set { m_MS.m_ExeFile = value; } + } + + [Category("Program")] + public string Arguments + { + get { return m_MS.m_Arguments; } + set { m_MS.m_Arguments = value; } + } + + [Category("Program")] + public bool HideMPWhileExecuting + { + get { return m_MS.m_HandleMPWindow; } + set { m_MS.m_HandleMPWindow = value; } + } + + [Category("Homescreen")] + public string Picture + { + get { return m_MS.m_Picture; } + set { m_MS.m_Picture = value; } + } + + [Category("Homescreen")] + public string ButtonImage + { + get { return m_MS.m_ButtonImg; } + set { m_MS.m_ButtonImg = value; } + } + + [Category("Homescreen")] + public string ButtonImageFocus + { + get { return m_MS.m_ButtonImgF; } + set { m_MS.m_ButtonImgF = value; } + } + + [Category("Homescreen")] + public string ButtonCaption + { + get { return m_MS.m_Caption; } + set { m_MS.m_Caption = value; } + } + } + + internal class Win32Wrapper + { + public const int GWL_STYLE = -16; + public const int GWL_EXSTYLE = -20; + + public const uint SWP_NOSIZE = 0x0001; + public const uint SWP_NOMOVE = 0x0002; + public const uint SWP_NOZORDER = 0x0004; + public const uint SWP_NOREDRAW = 0x0008; + public const uint SWP_NOACTIVATE = 0x0010; + public const uint SWP_FRAMECHANGED = 0x0020; + public const uint SWP_SHOWWINDOW = 0x0040; + public const uint SWP_HIDEWINDOW = 0x0080; + public const uint SWP_NOCOPYBITS = 0x0100; + public const uint SWP_NOOWNERZORDER = 0x0200; + public const uint SWP_NOSENDCHANGING = 0x0400; + public const int SW_HIDE = 0; + public const int SW_SHOWDEFAULT = 10; + + public const int HWND_TOPMOST = -1; + + [DllImport("User32", ExactSpelling = true)] + public static extern int SetWindowPos(IntPtr hWnd, int hWndInsertAfter, + int x, int y, int cx, int cy, uint uFlags); + + public const int WM_SYSCOMMAND = 0x0112; + public const int BM_CLICK = 0x00F5; + + + + [DllImport("user32.dll")] + public static extern int FindWindow( + string lpClassName, // class name + string lpWindowName // window name + ); + + [DllImport("User32", EntryPoint = "SetForegroundWindow")] + public static extern bool SetForegroundWindow(int hWnd); + + [DllImport("User32", ExactSpelling = true)] + public static extern bool ShowWindow(int hWnd, int nCmdShow); + + } +} Added: trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj (rev 0) +++ trunk/plugins/MultiShortcut/MultiShortcut/MultiShortcut.csproj 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,78 @@ +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProductVersion>8.0.50727</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{7CBDA33F-E11F-400B-8B3F-ABB0B54462AC}</ProjectGuid> + <OutputType>Library</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>MultiShortcut</RootNamespace> + <AssemblyName>MultiShortcut00</AssemblyName> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <DebugSymbols>true</DebugSymbols> + <DebugType>full</DebugType> + <Optimize>false</Optimize> + <OutputPath>bin\Debug\</OutputPath> + <DefineConstants>DEBUG;TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <ItemGroup> + <Reference Include="Core, Version=1.0.2587.38185, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\MediaPortal\Core\bin\Release\Core.dll</HintPath> + </Reference> + <Reference Include="Databases, Version=1.0.2587.38186, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\MediaPortal\Databases\bin\Release\Databases.dll</HintPath> + </Reference> + <Reference Include="Dialogs, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\MediaPortal\Dialogs\bin\Release\Dialogs.dll</HintPath> + </Reference> + <Reference Include="System" /> + <Reference Include="System.Data" /> + <Reference Include="System.Drawing" /> + <Reference Include="System.Windows.Forms" /> + <Reference Include="System.Xml" /> + <Reference Include="Utils, Version=1.0.2587.38184, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\MediaPortal\Utils\bin\Release\Utils.dll</HintPath> + </Reference> + </ItemGroup> + <ItemGroup> + <Compile Include="Config.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="Config.Designer.cs"> + <DependentUpon>Config.cs</DependentUpon> + </Compile> + <Compile Include="MultiShortcut.cs"> + </Compile> + <Compile Include="Properties\AssemblyInfo.cs" /> + </ItemGroup> + <ItemGroup> + <EmbeddedResource Include="Config.resx"> + <SubType>Designer</SubType> + <DependentUpon>Config.cs</DependentUpon> + </EmbeddedResource> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + Other similar extension points exist, see Microsoft.Common.targets. + <Target Name="BeforeBuild"> + </Target> + <Target Name="AfterBuild"> + </Target> + --> +</Project> \ No newline at end of file Added: trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs (rev 0) +++ trunk/plugins/MultiShortcut/MultiShortcut/Properties/AssemblyInfo.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("MultiShortcut")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("lr-software")] +[assembly: AssemblyProduct("MultiShortcut")] +[assembly: AssemblyCopyright("Copyright © lr-software 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("6fc5722f-e54a-4fef-8ff5-70ff897c0ccd")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/AxInterop.WMPLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/AxInterop.WMPLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Bass.Net.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Bass.Net.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/BassRegistration.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/BassRegistration.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Core.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Core.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Databases.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Databases.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Dialogs.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Dialogs.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/DirectShowLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/DirectShowLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/ICSharpCode.SharpZipLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/ICSharpCode.SharpZipLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Interop.SHDocVw.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Interop.SHDocVw.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Interop.WMPLib.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Interop.WMPLib.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MediaPortal.Support.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MediaPortal.Support.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MediaPortal.Support.pdb =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MediaPortal.Support.pdb ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MultiShortcut00.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MultiShortcut00.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MultiShortcut00.pdb =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/MultiShortcut00.pdb ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Utils.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/Utils.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/edtftpnet-1.2.2.dll =================================================================== (Binary files differ) Property changes on: trunk/plugins/MultiShortcut/MultiShortcut/bin/Release/edtftpnet-1.2.2.dll ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/MultiShortcut/TestServer/Program.cs =================================================================== --- trunk/plugins/MultiShortcut/TestServer/Program.cs (rev 0) +++ trunk/plugins/MultiShortcut/TestServer/Program.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Text; + +using MediaPortal.GUI.Library; +using MediaPortal.Util; + +using MediaPortal.MultiShortcut; + + +namespace TestServer +{ + class Program + { + static void Main(string[] args) + { + MultiShortcut ms = new MultiShortcut(); + MultiShortcut ms2 = new MultiShortcut(); + //ms.RunProgram(@"c:\windows\notepad.exe", String.Empty); + + Console.ReadKey(); + } + } +} Added: trunk/plugins/MultiShortcut/TestServer/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/MultiShortcut/TestServer/Properties/AssemblyInfo.cs (rev 0) +++ trunk/plugins/MultiShortcut/TestServer/Properties/AssemblyInfo.cs 2007-01-31 21:34:49 UTC (rev 67) @@ -0,0 +1,33 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("TestServer")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("lr-software")] +[assembly: AssemblyProduct("TestServer")] +[assembly: AssemblyCopyright("Copyright © lr-software 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("33c0939b-dc1d-41ed-be34-d3cf04a41197")] + +// Version information fo... [truncated message content] |