Programmatically specify Private Extension Gallery in Visual Studio 2012 - visual-studio-2012

One of the newest features in VS 2012 is the ability to create Private Extension Galleries, which allow you to build your own extension repositories and not have to publish them to the world (internal company tools, etc.). I've successfully created one as described in the MSDN blog I referenced, but I'm wondering if anyone knows of a way to programmatically set the details of the gallery - the name and URL, and then "Apply" it - so that each person who wants to access it doesn't have to manually enter in the info.
I looked in the registry to see if I could install a key, and I think it's possible but not exactly trivial. Anyone have any insight?

The registry keys to set are documented under http://msdn.microsoft.com/en-us/library/hh266735.aspx. $RootPath$ would indicate a path like HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0 on the user's machine. Minimally, you could write a little tool that just sets those registry keys.
If you want to be really fancy, you could take that .pkgdef example and stick that inside a .vsix. Then, installing that extension would register the private extension gallery. A bit meta, but that could prove useful.

I'm going to mark Jason's answer as accepted, because he pointed me in the direction of how to properly do it which was my ultimate question. However, I do want to add another solution which does work if this is all you need:
If you manually add your private gallery details to Visual Studio, your registry key will be created for you. Go to:
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\ExtensionManager\Repositories\[Dynamic Guid]
and export that key to a normal .reg file. You can then either create a simple batch script to install the key for you on other computers, or just have people use the .reg file to install it themselves.

Related

How to add a pluggin to gitbook?

I am a begginer but I am building a gitbook for a personnal project.
When you want to add a pluggin it is said that "Once you find a plugin that you want to install, you need to add it to your book.json:" here
I found the pluggin I want but I cannot find where I should install it ? Where is that book.json "thing" ? Do I need to have a github account to be able to do that ?
Thanks a lot
I've looked arount there is no tutorial existing for that
In this question it is said that "Switch to FILES at the top of the left sidebar and then right click to create book.json" but i dont get it, in the files part I am asked to drop or select a file and when I right click it just shows the classic menu of a webpage right click
Well, you'd need to have some sort of git service/git host where you can store the source in which you can find the book.json. GitHub is one of them and you can easily integrate it with GitBook (hence the name GitBook).
Here is a link to the documentation explaining exactly how to set it up. Alternatively you can use GitLab or self-host (the other option) although GitHub should be the easiest to start with. And yes you need an account on there.
Enabling GitHub Sync
Enabling GitLab Sync

Change default gitignore file when creating a new project

Is there a way to change the default file .gitignore that Android Studio creates when creating a new android project? I searched for it in the Settings but could not find anything.
Unfortunately, there is no way to do that automatically, besides the one Ted has mentioned.
However, personally, I don't see this as a big downside, because you can thus safely add your specific templates that fit best to your project.
To be able to do this, do the following:
Go to File -> Settings and from there highlight Plugins. Click on Browse repositories... and you should be able to find the plugin entitled .ignore. Install it.
Now to configure a .gitignore for any project, in case you have no project opened, click on Configure -> Settings. In case you have an open project, go to File -> Other Settings -> Default Settingsā€¦. Now expand Version Control and click on Ignore Files Support. You should be able to add a custom user template of your .gitignore-file there.
To use any template you've added there, just right click on your .gitignore and click on Add templateā€¦. There you'll be able to add your custom specifications, however, many others are given by default, so you don't need to do a google search for an OS or language specific .gitignore configuration.
Good question. I tried manually modifying the project_ignore template in the Android Studio installation (located at C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidProject\root in my Windows installation). That works, but it causes any future updates to Android Studio to fail unless you restore the original template first.
I'm posting this as an answer because it works. But it has such a bad down-side that I'm also starting a bounty in the hopes that someone can come up with a better solution.
On Mac, Applications->Android Studio.app(right click -> show package contents) -> contents-> plugins\android\lib\templates\gradle-projects\NewAndroidProject\root\ , i tried modifying, project_ignore file. i dont see error every time while looking for updates. instead of replacing, i appended at the end.

Create Lite version of my app with MonoTouch

I created my iPhone app with MonoTouch and deployed it to the AppStore. Now I want to add a free lite version of the same app. What is the best way to do this with MonoTouch/MonoDevelop?
So far I created a new Provisioning Profile for the lite version. I can change the build options to use the full or the lite profile. But what else do I have to change and how? I think at least the app name should be changed, but how???
Thanks,
Christian
The way I do these things is to create a new project, then add the existing c# files from the first project as a link. You will see this option on the "add existing file" dialog. Keep in mind all your Icon/Splash screen files will have to be copied though, MonoDevelop doesn't handle these right if they are linked.
Just a side note, you can get by with less provisioning profiles. Create one as com.yourcompany.*, then name your apps com.yourcompany.yourapp1, yourapp2, etc.
So I have a profile for Development, AdHoc, and AppStore, but I have several apps deployed.
Rather than link files, I prefer to make three projects: A library project which will have all the UILogic called X.Touch.Core and two more which will have a reference of the Core. X.Touch.Lite and X.Touch.Premium. This way you don't need to have linked files, it can be painful. You can put a file called settings.xml and perform some feature toggling there.

Missing safe control entry

I've got a working hello-world like webpart for my SPS3.0
I can compile, pack and deploy it using VS2008, makecab.exe and stsadm. So I know the theory of deploying sharepoint webparts.
My problem:
After I inserted an additional .webpart file, an elements.xml and a feature.xml to deploy the .webpart file and get knowledge about adding features to my webpart, the deployed webpart is missing its safe control entry in the web.config.
But the dll can be found in the gac and my features are also deployed to the right folders.
I didn't change anything in my manifest.xml especially not in it's -tag, because it definitely worked before i added my additional feature files.
Can anybody help me? Should i provide you some code snippets?
Thanks Stefan
You can try WSPBuilder, it will automate and ease your deployment process.
As far as I can tell, you are trying to find out how to register your web part as a safe control without using any tools, etc. and also without admin rights. I think you will find this impossible since the safe control registration needs to happen in the web.config file and one way or another (WSP Builder, manually, script) this file needs to be modified. Only admins can do this as far as I know.
If you are deploying your solution package using stsadm -o deploysolution, be sure that you are either using the allcontenturls parameter or that the url parameter is pointing to the correct web application. Which parameter you use (and how) will determine which web.config file(s) will have the safe control settings from manifest.xml applied to them.

Win32: HtmlHelp doesn't work from a network share. What's the alternative?

Since 2005, when Microsoft prevented HtmlHelp functioning off a network share, e.g.:
\\appserver\tos\PointScanner.exe
\\appserver\tos\PointScanner.chm
What are we supposed to do instead?
(Given that the application is not installed locally.)
To rephrase: What is Microsoft's intended, supported, out-of-the-box, help solution?
You can allow access via the Registry setting described here:
http://support.microsoft.com/kb/896054/
If you don't want to open any security vulnerabilities by modifying Registry settings your application could also create a local copy of the .chm file, e.g. in the users temp folder (%TMP%) and open the help from there. You can remove the file again when your application exits (in case you don't want to leave anything behind on the user's workstation)
I started with the registry change mentioned by divo. Eventually I moved from network folder based chm files to actual "html help". This was easy for me since I use RoboHelp which can generate either format from the same source code.

Resources