2009-09-07 8 views
1

Salut j'ai écrit l'application sur vs2008 C# (édition express) sur Win XP qui lit et crée des fichiers Excel (Excel 2003) en utilisant Microsoft Excel 11.0 bibliothèque d'objets (parce que c'est le seul disponible un par l'ajout de références dans la section COM) ... maintenant je publie ce projet, puis copiez le setup.exe et le prendre à la machine vista win de mon ami, l'installation se passe bien mais bosses il commence à jeter des exceptions et s'arrête au milieu de les processus (sur mon win xp ça fonctionne bien sans aucun problème) ... plz pouvez-vous me dire la solution à ce problème ??? mercivs 2008 C# app ne fonctionnera pas sur win vista

+6

Quelles sont les exceptions que vous voyez? –

+0

Quelles sont les exceptions? Cela pourrait être n'importe quoi sans plus d'informations. –

Répondre

1

En utilisant votre application testée XP dans un environnement vista, très probablement il se heurtera au mur UAC. Essayez d'exécuter votre application "en tant qu'administrateur". Vous avez dit que vous créez des fichiers Excel, alors peut-être que l'utilisateur actuel n'a pas l'autorisation d'écrire dans votre répertoire cible. Avec cet exemple de code, vous pouvez vérifier si votre application fonctionne sur un système d'exploitation uac activé.

// a really simple check that does not account for possible UAC-disabledness via group policy 
public static bool IsUACEnabledOS() 
{ 
int majorVersion = Environment.OSVersion.Version.Major; 
int minorVersion = Environment.OSVersion.Version.Minor; 

return (majorVersion >= 6); 
} 

Après cela, vous pouvez this tutorial de demander l'élévation nécessaire.

0

devrait vraiment dire ce que les exceptions sont sinon c'est un coup de poignard au hasard dans l'obscurité, mais ...

sont la même version Excel bibliothèques disponibles sur la machine cible?

1

Où créez-vous les fichiers Excel? Peut être votre programme n'a pas droit d'accéder au répertoire où vous stockez les fichiers.

Un autre cas peut être que l'ordinateur de votre ami ne prend pas en charge la bibliothèque d'objets excel 11.0 utilisée car il a une autre version d'Excel (Excel 2007) installée.

Questions connexes