snake1984_10
Messages postés4Date d'inscriptionvendredi 22 octobre 2004StatutMembreDernière intervention 9 octobre 2008
-
9 oct. 2008 à 16:16
snake1984_10
Messages postés4Date d'inscriptionvendredi 22 octobre 2004StatutMembreDernière intervention 9 octobre 2008
-
9 oct. 2008 à 17:07
Bonjour j'ai trouvé sur le web un code c# permettant de créer des fonctions personnalisé dans Excel.
J'ai réussi à le reproduire et à l'adapté à mes besoins (toujours en c#) mais j'aimerais qu'il soit en VB.NET pour pouvoir l'intégrér au mieux dans mon projet. Les parties qui me posent problème sont les parties entre [].
using System;
using System.Runtime.InteropServices;
using Microsoft.Win32;
using OfficeMap;
namespace Ribbon
{
[Guid("C4770ED7-160C-4de4-B4A4-5D953FCDC42B")]
[ClassInterface(ClassInterfaceType.AutoDual)]
[ComVisible(true)]
public static class IRibbon
{
#region Enregistrement de la DLL
[ComRegisterFunctionAttribute]
public static void RegisterFunction(Type type)
{
Registry.ClassesRoot.CreateSubKey(GetSubKeyName(type, "Programmable"));
RegistryKey key = Registry.ClassesRoot.OpenSubKey(GetSubKeyName(type, "InprocServer32"), true);
key.SetValue("",System.Environment.SystemDirectory + @"\mscoree.dll",RegistryValueKind.String);
}
[ComUnregisterFunctionAttribute]
public static void UnregisterFunction(Type type)
{
Registry.ClassesRoot.DeleteSubKey(GetSubKeyName(type, "Programmable"), false);
}
private static string GetSubKeyName(Type type,string subKeyName)
{
System.Text.StringBuilder s = new System.Text.StringBuilder();
s.Append(@"CLSID\{");
s.Append(type.GUID.ToString().ToUpper());
s.Append(@"}");
s.Append(subKeyName);
return s.ToString();
}
#endregion
}
}