Revenera logo
Image: InstallShield 2022 Features and Benefits

In this episode of Revenera’s Tech Talk, Kendra Morton interviews Venkat Ram Donga about the new features in InstallShield 2022 R1 release. They discuss the integration capabilities with Visual Studio 2022 and support for custom extensions in MSIX projects. The phased approach to releasing specific capabilities is necessary due to the change from 32-bit to 64-bit application. Venkat explains the importance of custom extensions in MSIX projects and how InstallShield 2022 R1 supports them. The custom extension feature empowers users to add functionality that is not available out-of-the-box and enhance the capabilities of MSIX packages. The episode also includes a demo of custom extensions in MSIX.


Kendra Morton (00:00:00) – Hello, I’m Kendra Morton, product Marketing Manager at Revenera. Welcome to an episode of Revenera’s Tech Talk, where we discuss all things related to software installation. Today we’re going to discuss what’s new in the InstallShield 2022 R1 release, and a hint. We’re going to be talking about the Visual Studio 2022 and custom extensions in MSIX. So yeah, maybe that’s a little bit more than a hint. Note to everyone hang around after this discussion for a quick demo of custom extensions in MSIX. So you’ll wanna stick around for that. So welcome once again to our resident InstallShield expert Venkat Ram Donga, principal product manager at Revenera. Hi Venkat.

Venkat Ram Donga (00:00:43) – Hey Kendra. Thanks for having me on this, Tech Talk and I’m so excited to talk about, InstallShield 2022 R1, and we’ve been working on for Visual Studio for quite some time and, I can’t wait to share that with our users.

Kendra Morton (00:00:57) – Great. Venkat. So we just released our newest version of InstallShield, which offers up some integration capabilities with Visual Studio 2022. Can you walk our audience through what this release offers Visual Studio users?

Venkat Ram Donga (00:01:11) – Sure, Kendra. So, InstallShield has a long history with, integration with Visual Studio. Okay. Our bulk of our users actually are on the Microsoft, technology stack and, they’re so used to using Visual Studio all through the Visual Studio evolution as well. Right. And there’s some really great integration capabilities from InstallShield.  Like from InstallShield itself, you can actually, from Visual Studio itself. You can actually create an InstallShield project, ensure that the binaries that are coming out from your Visual Studio solution are automatically added into your InstallShield project. And you don’t need to actually build these two separately. The Visual Studio, built us are now, are always integrated with InstallShield beta. So you have a seamless build process. So our users have you a long, being, used to this integration with the Visual Studio.

Venkat Ram Donga (00:02:06) – Right? And this time around we are proud to announce that, and although it is, coming a little late in the light of candor, but we are now proud to announce that InstallShield now can happily integrate with, Visual Studio 2022. Now, what is coming in exactly in 2022 R1 release is that if you’re an existing InstallShield user and you got InstallShield or a Visual Studio project already configured with the InstallShield, you can now build, open your InstallShield project from within Visual Studio and you can build it, upgrade it, using, InstallShield tasks. Right. so I’ll, I’ll talk about, why we are doing, a phased approach, but, this is, crux of the integration that is coming in in 2022 R1.

Kendra Morton (00:02:54) – Yeah. So we’ll talk about that phased approach, but there’s more planned right for Visual Studio yet this year. So what can users look forward to and why this phased approach to releasing specific capabilities?

Venkat Ram Donga (00:03:06) – Yeah, so, we were, I mean, to be, candid, right? So InstallShield has always been a 32 bit application. And, though there have been requests about, how to move to,  to request a move InstallShield to 64 bit,  binderies,  we weren’t being able to get to the item for a long time, right? But Visual Studio was not, far behind. So Visual Studio just, 2022 just dropped the ball saying, Hey, we’re no longer a 32 bit application. We are a 64 bit application, right? So integration of InstallShield, which is a 32 bit application with Visual Studio, which is now a 64 bit app, okay, has been, slightly challenging, for us. And, we really had to, take a phased approach where we, unblock our existing customers with,  this integration first, okay.

Venkat Ram Donga (00:03:54) – Before we go know nuts into integrating fully with Visual Studio 2022, right? So, what are the various phases we’re talking about? The first phase, okay, which is coming in 2022 R1, is, you know how you, if you’re an existing InstallShield and we Visual Studio user, you can now, upgrade your existing project from within Visual Studio and, build it using the MS Build Task of Visual Studio. That’s phase one. And what are we going to do in phase two is, we’re going to allow you to have, create InstallShield projects,  from within Visual Studio itself. So, this has been the seamless integration that, you know has always been there. And, in subsequent releases, we’re going to be laser focused on ensuring that this capability is also done, and phase two of the integration ensures that the end-to-end integration between Visual Studio and InstallShield is complete.

Kendra Morton (00:04:44) – Okay, so that’s Visual Studio, but let’s talk about, the second feature that we’ve, that’s in this new release of InstallShield support for custom extensions of an MSIX projects. Can we start with some introduction around what extensions mean in the MSIX world and what does that mean and what can users do that they couldn’t do before?

Venkat Ram Donga (00:05:08) – sure. So, let me back up a bit about, what extensions are, right? So know most, MSIX apps actually require extensions, what are extensions?  extensions are essentially, a means for the MSIX package to declare how the wish to interact with the Windows operating system. For example, I’d want to create a firewall exception for my application. I do not want, Windows Defender Firewall to block my application for on specfic on a, on a few ports right? Now, how do I actually say, Hey, my MSIX package is an exception for this, right? So how do I do that? Is by enabling an extension in my MSIX package and declaring that, hey, Microsoft, allow these, ports to be enabled by Windows Firewall, right?

Venkat Ram Donga (00:05:55) – So these extensions could be either at a package level or they could be an application level. An application level. I can say, hey, I’d want to create, my application as a startup task, know when, where somebody locks onto Windows, I want my application to be run, right? Or, it could be at a package level when talk to the previous example to say, Hey, windows Firewall, please allow the, some request to go through certain ports, through Windows Firewall, right? So if you have a non-real app, I mean, you can always create an application without, any extensions, but it’s not the case in most cases.  in most cases, people would want some of the other, Windows, features to be, used by the app, right? So we really have a non-trivial app that requires to interact with Windows storage features. Users would really need to declare these extensions and, in their MSIX package,

Kendra Morton (00:06:46) – Okay, so what’s InstallShield’s coverage? And do we have everything that Microsoft supports so far? And then what’s our strategy for anything new that comes up?

Venkat Ram Donga (00:06:57) – Right? So that’s, when we started with the entire MSIX project to InstallShield, we added tons of extension support. Now there’s so many extensions available out there, and it’s becoming a nightmare for us to, keep up with, so many extensions that are available out there, right? So, there’s so many that comes in, and once you figure that, no, instead of providing, out of the box support for every extension out there, we’d rather, have our customers give that extensibility in terms of, hey, define your own, right? So, with rather investing, time in saying, hey, now enable firewall, now enable Startup now to enable do this that, right? So we thought we right rather invest in the framework, which will allow users to go ahead and, declare their own extensions and add them to their MSIX package.

Venkat Ram Donga (00:07:43) – Now extensions are nothing but a small blob of XML tags, into the Appx manifest file itself into the MSIX package, right? And the custom extension feature, builds on top of that. All you need to do is, since you know what extension you are adding, you would know the schema, you would know the name space and whatnot. All you need to do is just copy, paste extension tag from the Appx manifest file and put it into InstallShield and build your project, right? So InstallShield will take care of ensuring that, this is properly placed into the Appx manifest file when the MSIX package is built.

Kendra Morton (00:08:18) – Okay, very good. Great stuff. Venkat. Thank you. I’m looking forward to coming back really for the next release to discuss what’s new in InstallShield. How about you?

InstallShield icon


Create native MSIX packages, build clean installs, and build installations in the cloud with InstallShield from Revenera.

Venkat Ram Donga (00:08:28) – Yeah, same here, Kendra. So I can’t wait to work with our engineering on, working on the next phase of InstallShield and,  we’ll soon talk about now how,  we can make that happen.

Kendra Morton (00:08:38) – Yeah. And obviously and, talk about more about Visual Studio down the road in, in another release. So absolutely. Thank you so much. Yep. Yep. All right. So to our audience as promised, hang around, there’s a quick demo of what we of, custom extensions and MSIX. So please, please stick around for that and we look forward to catching you on an upcoming episode of Tech Talks. So, thank you.

Venkat Ram Donga (00:09:04) – Hello everyone. In the short demo, let’s take a quick look at how custom extensions can be configured and run using install 2022. Let’s start by creating an MSIX project, and I’d want to create an MSIX project that adds firewall rules, in the Windows operating system. Let me start by adding a sample, exe application and then create an application for it. And then you see that we already have a lot of applications that you can define out of the box. However, if there are any app, extension that you would like to add, which are not available here, InstallShield will be able to allow you to create a custom extension. So, since we’re talking about firewall rules, firewall rules is a package custom extension. So, we’ll create a new custom declaration and give the name as firewall rules MSIX. And each of these extensions would actually fall under a different namespace. So, the firewall rules are under Desktop two namespace. So you’d have to select the desktop two namespace, and all you need to do is paste the Appx Manifest XML content in here, and as usual, digitally sign new setup. Build. And let’s install.

We see now that the firewall rule has been added to the inbound rules in Windows Defender firewall. Now this is an example of a package level custom extension. Now let’s take a quick look at how you can create an application level custom extension. Let’s start by creating another MSIX Project. Let’s start by adding a new file and now go to declaration section under application declaration section, create a new declaration set, and under the declaration set create a new custom declaration. And let’s give a name, task, and startup task are under the UAP namespace. We’ll select that and paste your XML content into this dialogue. Let’s go ahead and create a new application. Associate the declaration set to this. Let’s go initially sign the package. Let’s build the installer. Install that app. Let’s navigate to absent settings to see if the application has been added to the log on task. To see that this application is now configured to run at log on. So this is how you can actually create custom extensions that are not available in InstallShield out-of-the-box, using your own XML name space that InstallShield will take care of adding it to the Appx manifest file during the build time. Thank you.