Salut,
J'ai fait une DLL que je voudrais utiliser en VBA dans Excel ou Access.
En fait tout fonctionne très bien sur mon poste de développement mais quand je déploie ça sur les postes de prod, ça ne marche pas.
Je fais un regasm.exe mais je ne peux pas l'ajouter en reférence dans mes projets vba...
qqn aurait-il une diée...
voilà le code de ma dll...
namespace CRMFunctions
{
[ClassInterface(ClassInterfaceType.None),
ComDefaultInterface(typeof(ICRMFunctions))]
public class CRMFunctions: ICRMFunctions
{
//public CRMFunctions()
//{
//}
[ComRegisterFunctionAttribute]
public static void RegisterFunction(Type type)
{
RegistryKey key = null;
Registry.ClassesRoot.CreateSubKey(GetSubKeyName(type));
key =Registry.ClassesRoot.CreateSubKey("CLSID\\{"+type.GUID.ToString().ToUpper()+"}\\InprocServer32");
key.SetValue("", Environment.GetFolderPath(Environment.SpecialFolder.System)+@"\mscoree.dll");
}
[ComUnregisterFunctionAttribute]
public static void UnregisterFunction(Type type)
{
Registry.ClassesRoot.DeleteSubKey(GetSubKeyName(type), false);
}
private static string GetSubKeyName(Type type)
{
string s = @"CLSID\{" + type.GUID.ToString().ToUpper() + @"}\Programmable";
return s;
}
public DateTime DateFixing_1()
{
string sqlDateFixing = "Select j_1 From dbo.VW_STD_DATEFIXING";
return DateTime.Parse(dBAccess.GetValue(sqlDateFixing).ToString());
}
public DateTime DateFixing_2()
{
string sqlDateFixing = "Select j_2 From dbo.VW_STD_DATEFIXING";
return DateTime.Parse(dBAccess.GetValue(sqlDateFixing).ToString());
}
public DateTime DateFixing_3()
{
string sqlDateFixing = "Select j_3 From dbo.VW_STD_DATEFIXING";
return DateTime.Parse(dBAccess.GetValue(sqlDateFixing).ToString());
}
}
}
Merci d'avance

Bossun
P.S1 C'est mieux de prendre son pied que de se prendre la tête!
/F