44 votes

Début du développement de VSTO

Je suis assez confus avec ce que sont les outils nécessaires pour VSTO develpment. Plus précisément, je veux manipuler Excel 2003/2007 documents de programmation. J'ai fait pas mal de VBA avant, si vous souhaitez associer une réponse à cela.

Quelques questions que j'ai sur VSTO:

  1. Puis-je utiliser Visual Studio 2008 Express Edition C#/C++ pour cela?
  2. Ai-je besoin d'avoir .NET framework est installé?
  3. Le résultant VSTO programme besoin d'une copie de l'Office est installée dans le même système de fonctionner?

Des liens directs vers les outils pertinents/plugins/IDE sera appréciée.

Note: je suis totalement nouveau pour VSTO et .NET, mais un Bureau de la puissance de l'utilisateur. J'ai de l'expérience avec la programmation COM.

65voto

Todd Main Points 24036

Ouais, ça peut prêter à confusion, surtout compte tenu de l'ignorer au niveau des conventions de nommage, etc. Essentiellement, vous aurez besoin de:

  • La version complète (pas Express) de Visual Studio et la .NET version que vous voulez cibler.
  • L'un des VSTO temps d'exécution (VSTO 2003, VSTO 2005, VSTO 2005 SE, VSTO 2008, VSTO 2010). Pour que votre demande, VSTO 2005 SE est probablement votre meilleur pari.
  • Lors de la distribution de votre application, vous aurez besoin de plus, comme le Pia et le .NET version que vous avez ciblé. Pour VSTO 2010, vous n'avez pas besoin de les assemblys Pia (juste ce que vous utilisez seront emballés avec votre application automatiquement).

Quelques conseils:

  • En allant de la VBE à l'intérieur de Bureau pour VSTO doit être lisse-ish déplacer si vous avez utilisé .NET pour beaucoup de mesure.
  • VSTO versions de l'objet modèles pour un programme donné (Excel, PowerPoint, etc.) il peut y avoir un peu de plus de façons de faire les choses qui sont différents/mieux que dans le VBA la version de l'objet modèle. Pour exemple, le contrôle de Signet pour Mot de VSTO 2008 n'est pas la même que celui qui est originaire d'un accessible via VBA.
  • La distribution de votre application peut être une douleur. C'est la raison que VSTO pour Visual Studio 2010 ne vous oblige pas d'inclure la totalité de l'interopérabilité (PIA) des fichiers avec votre forfait.
  • Cibler les différentes versions de Bureau avec la même solution n'est pas officiellement prises en charge pour les VSTO 2010. Il y a des façons autour de cette question que certaines personnes en avons parlé, mais vous n'obtiendrez pas beaucoup de support de MSFT sur elle.

Il ya quelques sites qui vous devriez jeter un oeil à:

Enfin, pour sauver le meilleur pour la fin, c'est le livre que j'ai lu quand j'étais tout juste de commencer et elle a été très utile: VSTO pour le commun des Mortels(TM): VBA UN Guide du Développeur pour le Développement de Microsoft Office à l'Aide de Visual Studio 2005 Tools pour Office

4voto

Joe Erickson Points 4571

SpreadsheetGear pour .NET est un composant feuille de calcul compatible avec Excel pour .NET qui va travailler avec Visual Studio Express éditions, l'exige .NET 2.0 ou supérieur, ne nécessite pas d'Office ou Excel doit être installé, et ne permettent libres de droits de distribution pour un nombre illimité de client et / ou serveur ordinateurs.

Vous pouvez voir en direct des échantillons ici et téléchargez la version d'essai gratuite ici.

Avertissement: je possède SpreadsheetGear LLC

0voto

Barry Byrd Points 21

Vous pouvez créer excel avec Express Edition à l'aide de cette Excel .NET composant. Il ne nécessite pas de VSTO, ADO ou MS Excel automation.

Excel Jetcell .NET composant permettant de lire et écrire feuille de calcul excel. Ici vous pouvez trouver de nombreux Excel VB.NET et C# exemples. Voir, par exemple, VB.NET code pour créer la feuille de calcul excel de tableau:

Imports DTG.Spreadsheet
...
Dim WBook = New ExcelWorkbook()
WBook.Worksheets.Add("ArrayValues")
For i As Short = 0 To 10
   For j As Short = 0 To 10
      WBook.Worksheets(0).Cells[i,j].Value = arr(i,j)
      j = j + 1
   Next j
   i = i + 1
Next i
WBook.WriteXLSX("ExcelSpreadsheet.xlsx")

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X