Skip to main content

Posts

Showing posts from May, 2014

Build your local powershell module repository - ProGet

So Windows Powershell Blog released a blog a couple of days ago ( link ). Not too long after, a discussion emerged about it being to complicated to setup. Even though the required software is open source (nugetgalleryserver), it looks like you need to have Visual Studio Installed to compile it. I looked into doing it without visual stuidio, however I have been unable to come up with a solution. I even tweeted about it since I am not an developer. Maybe someone how is familiar with “msbuild” could do a post on how to do it without VS. Anyhow one of my twitter-friends ( @ sstranger ) came to the rescue and pointed me in the direction of ProGet , hence the title of this post. ProGet comes in 2 different licensing modes Free (reduced functionality) Enterprise (paid version with extra features) The good news is that the free version supports hosting a local PowershellGet repository which was my intention anyway. So off we go and create a Configration that can install ProGet for us. T

ConfigMgr – Scripting with powershell module

I read David O’Brien’s post about automation with SCCM. He identified an issue with the SCCM-Powershell module that requires a manual “job” before you can start to automate with the module. You have to start Powershell from the SCCM-console to import the certificate that the module is signed with. Read all about it in his post. I am only providing a solution for you so you do not have to do regular “manual” labour (no pun intended). Above you will find an DSC script resource you can use in your configurations and a function you can use in your scripts. Look me up on Twitter if you have any questions or leave a comment. Cheers Tore

Toying with audio in powershell

Controlling mute/unmute and the volume on you computer with powershell. Add-Type -TypeDefinition @' using System.Runtime.InteropServices; [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IAudioEndpointVolume { // f(), g(), ... are unused COM method slots. Define these if you care int f(); int g(); int h(); int i(); int SetMasterVolumeLevelScalar(float fLevel, System.Guid pguidEventContext); int j(); int GetMasterVolumeLevelScalar(out float pfLevel); int k(); int l(); int m(); int n(); int SetMute([MarshalAs(UnmanagedType.Bool)] bool bMute, System.Guid pguidEventContext); int GetMute(out bool pbMute); } [Guid("D666063F-1587-4E43-81F1-B948E807363F"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IMMDevice { int Activate(ref System.Guid id, int clsCtx, int activationParams, out IAudioEndpointVolume aev); } [Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), Inte