Programatically access the MSDN classes and documentation? - c#

I need to access the full set of .NET and Windows classes from the MSDN documentation. I've installed the MSDN docs from the Visual Studio 2012 DVD. I know of the URL method of programatically accessing classes and documentation data, but I'm looking to see if there's a faster method. I'm creating a VS addin that brings documentation of Windows API and other features into the VS IDE, and so I need an offline copy of the docs. How can I quickly access and download the MSDN documentation with all classes and data therein?
I'm currently reviewing:
DExplore COM API for MS Help 2 format
Help to CHM, in C#
Not useful:
MS Help 2 API - no real API, just links
VS Help Downloader, in C# - just a basic downloader of MSDN CAB files

Check out the Microsoft Help Viewer 2 Runtime API Samples on CodePlex. It provides source code to help you get started with the Help Viewer 2.0 API, including:
HV2ApiExplore.sln - A utility that explores all aspects of the Help Viewer 2.0 API
HV2Viewer.sln - A simple HV 2.0 Help Viewer.

Related

Options for Editing Word Documents Online

What are my options for editing Word documents? We have a hosted business web application (written in C# using javascript libraries and webapi2) and our users would like some basic document management functionality. From within our application they would like to complete documentation which currently resides as Word 2013 documents.
Is there something that would allow us to upload a docx file, convert to some web friendly XML format that would allow online editing or can Office Web Apps be used directly within the browser for Word edits if the client has a valid Word license? Is SharePoint online integration an option? Or, is there an option out there that I am not aware of? Any direction would be greatly appreciated!
To complete your task, you can use the DevExpress ASPxRichEdit and ASPxSpreadSheet controls. They support the most popular rich text and spreadsheet formats (including MS Office documents).
Both controls are web-based (ActiveX isn't required), standalone (you don't need to integrate external services in your application) and work in all modern browsers. Also, they have the built-in filemanager, so you can use them with minimum coding.
Moreover, both controls are distributed as a part of the ASP.NET controls suite, which includes a lot of other web components.
If you're client have the correct licenses and that you already have a solution develop that have the basic document management features like upload documents, download, etc. Then I would opt for the Office Web Apps. This solution requires some reading and a certain architecture (it's own server for instance). But it is probably one of the best Word Document editor currently out there. You can find the basic information of the Office Web App server 2013 here
These approach will let you either use a sharepoint integration or a custom WOPI-Host. I've analysed and searched for different tools and other the Google Docs, this would be the best option currently out there.
If you actually take the Office Web App server approach with a custom WOPI-Host you can find several WOPI-Host samples on the internet:
MVC6 WopiHost based on marx-yu's WOPI host
Building an Office Web Apps (OWA) WOPI Host
As I know, Google Docs can help you on your issues, but you just cannot build it in your web Apps. And aceoffix can be an alternative too, which can enable your web project edit Ms Office documents full functionally.

Integrating Microsoft Office Communicator 2007 R2 - Samples?

Basically, I can't seem to find any good resources out there for examples. I attempted to download a couple of msi from microsoft.com, and one of them included isntalling a solution file (.sln), but when I open the solution I can't actually compile the application.
Basically, what do I need to actually get started with getting the necessary libraries and sample code?
A good resource to get started is the Programming for Unified Communications book - this covers R2 quite well. Check out the answer here for a bit more detail

How to write FireFox extension with Visual Studio using C# programming language?

I was wondering if it's possible to write Firefox extension using .Net Framework?
Had anybody such experience in writing Firefox extensions using C# programming language?
Any good sites or guidelines would be very helpful.
FFPlugin http://img81.imageshack.us/img81/3049/ffplugin.jpg
Here is an example of what I need. Extension to enter phone number and to send SMS Message.
I draw it in Paint, so I'm sorry for having no artistic touch.
Assuming you're asking about writing an extension (and not a plugin), the best place to get started is with the info at the Mozilla Dev Center.
Konamiman is correct: extensions are mostly XUL (an XML grammar) and Javascript, packaged into a ZIP file with the extension .xpi. The various links from the page I linked should answer basic questions, like the one you posted above:
https://developer.mozilla.org/en/Building_an_Extension
https://developer.mozilla.org/en/Extension_Frequently_Asked_Questions
Firefox extensions are written primarily in Javascript. See here: http://www.rietta.com/firefox/Tutorial/backend.html. So unless you can find a way to convert C# code/.NET Framework objects to Javascript, you are out of luck.
As has been observed by other respondents, Firefox extensions are primarily written in Javascript: but you're in luck, because Script# is a free tool that enables developers to author C# source code and subsequently 'compile' it into Javascript.
I'm not sure how you'd do for C#, but you can use XPCOM to call native code libraries: that's how the Glasser extension, for instance, is able to use the Windows-specific Aero effects.
IBM hosts a very good XPCOM tutorial at DeveloperWorks.

How do I add context help to an assembly

I have created a .NET C# component that I am going to sell as a developers tool. My question is, how do I add my own custom context help to the methods and properties.
So, when I press F1 over a method I want it to go to a specific web page. Is this even possible?
Use the Visual Studio SDK and the help integration kit
Part of the Visual Studio SDK is the Help Integration project type. Information about integrating with help here (MSDN). Same applies for VS 2005 and 2008.
Here's a link to the download, for earlier versions of VS (before '05).
There's an entire development center about the Visual Studio SDK.
The effort feels a lot higher than shipping a .Chm and/or IntelliSense files, but I understand you'd like to add examples, etc.
Consider if it's worth the effort
Are you providing enough information in the IntelliSense documentation files (.xml) for all of your component's assemblies?
More often than not, that's sufficient to provide a lot of information, including additional remarks, notes, etc.
I may just be biased to my development workflow and that of my co-workers, but I can't remember the last time that I saw anyone press "F1" in Visual Studio.
Plus, if you really ever do want a full-blown .Chm help file, your XML documentation comments can be turned into that with little effort thanks to tools like Sandcastle and formerly NDoc.
Aside from the traditional F1 help, I find that Sandcastle created CHM files are extremely helpful when deploying any reusable libraries and frameworks. GhostDoc has proven quite useful for creating the in-code XML needed for Sandcastle CHM files. Sandcastle also has the option of creating MSDN-style HTML help files as well as the tried-and-true CHM.
Context help is generated via the XML documentation in your code.
If you're unfamiliar with it, in C#.NET you can document a function by typing three successive forward-slashes before the method signature:
/// <summary>
/// What Foo() does...
/// </summary>
/// <param name="bar">What bar is...</param>
/// <returns>What the return int is...</returns>
public int Foo(string bar)
{
// Does something...
}
In VB.NET, I believe it's three apostrophes.
Assuming you're familiar with using xml comments to create the xml intellisense file and can use sandcastle to generate .chm files separately then the missing piece is F1 integration.
This article is ancient but indicates how to do it with VS 6.0 era help
The comments there direct you to the 2003 integration kit
Beyond that you seem to have to download the actual VS SDK.
This page seems pretty up to date (it has info on changes in 2010)

C# and .NET FOLDERID

How do I use Windows Vista's FOLDERID API in order to retrieve filepaths for "known folders" such as System or Windows? I've seen some APIs but I don't know how to import them properly. And yes, I know this is a very newbie question, but I spent a half hour googling and couldn't find the answer; I'd also appreciate a way to find an answer to questions like this in the future. :-)
Edit 1: So apparently the relevant functions are included inside of a DLL, and not any "proper" C# class/library that can be imported. The pinvoke syntax might work, although I was hoping for an OOP interface, not a function. Will test.
Edit 2: So I am very new to C# and don't know what a managed interface is. System.Environment.GetFolderPath is perfect.
Take a look at PInvoke SHGetKnownFolderPath
There's also a managed API:
Environment.GetFolderPath
but it doesn't contain all the folders.
This morning I read about Vista Bridge. It may help.
"Many of you don’t know about the Vista Bridge sample library, what can it do or even where you can find it. Let’s start with the basics; i.e. definitions. Vista Bridge is a sample library that contains managed wrappers for a number of Windows Vista APIs that are not exposed in the .NET Framework. The wrappers include common Open and Save file dialogs and new Vista advanced task dialogs. So, where to download it? There are three ways to obtain the sample library. It’s included in both the Windows SDK for Windows Vista Update and in the newer Window SDK for Windows Server 2008 and .Net Framework 3.5; or a third option is to download the Vista Bridge sample library which is part of the Windows SDK Cross Technology samples. I recommend downloading the Windows SDK for Windows Server 2008 and .Net Framework 3.5, but if you don’t have the network bandwidth or just want the samples, then the last option should be the most suitable.
..."

Categories