Question

Ce que j'essaie, c'est d'accéder aux propriétés d'accès MS sans ouvrir la base de données.

Voici un code pour mieux comprendre:

var processStartInfo = new ProcessStartInfo(args[0]) 
    { 
        WindowStyle = ProcessWindowStyle.Hidden, 
        CreateNoWindow = true
    };

Process.Start(processStartInfo);

application = (Access.Application)Marshal.GetActiveObject("Access.Application");

dao.Property allowByPassKeyProperty = null;

foreach (dao.Property property in application.CurrentDb().Properties)
{
    if (property.Name == "AllowByPassKey")
    {
        allowByPassKeyProperty = property;
        break;
    }
}

Mon problème est que dans ce cas, j'ouvre la base de données afin de rechercher les propriétés (application.currentdb (). Propriétés) et le truc de démarrage de MS Access.

Je veux éviter tous les trucs de démarrage et injecter simplement la bonne valeur pour la propriété.

Est-il possible de passer par les propriétés, peut-être avec réflexion et liaison tardive comme celle-là: http://www.codeproject.com/kb/database/mdbcompact_latebind.aspx?

Ou y a-t-il une autre option pour réaliser ce que j'aimerais?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top