How to install Orca - which Windows SDK(s) contain the Orca MSI editing tool? - windows

According to various web pages, orca.msi/orca.exe is primarily distributed as part of the Windows SDK.
I have Visual Studio 2015 Professional Update 3 installed. I have installed all the "Universal Windows App Development Tools" components, which includes three different versions of the Windows 10 SDK (10.0.14393, 10.0.10586, 10.0.10240).
But I can't find orca.msi or orca.exe anywhere on my machine. Is this tool no longer packaged with the Windows SDKs? Do I need to install one of the older Windows SDKs as well? Is there an optional Visual Studio 2015 component that I can install to get Orca?
An MSDN page for orca.exe eventually leads me to a download page for Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1. Is this the most recent SDK which includes orca.msi, or can it be found in newer SDKs such as the Win7/.NET4.0 or Windows 8 or Windows 8.1 SDKs?

Thanks to the confirmation from #pnp0a03 that Orca is still present in modern Windows SDK ISOs, I was able to figure out an install process which does not require re-downloading the full ISO.
It turns out that the Windows 10 SDK can install orca (though the file is now named orca-x86_en-us.msi) but it is not installed by default when you install the SDK via the Visual Studio installer. It is an optional component of the SDK, and the Visual Studio 2015 installer does not offer any control over which SDK components are installed. You have to separately run the SDK installer to install the component which contains Orca.
To do so, go to "Apps and Features", select the most recent Windows Software Development Kit from the installed apps list, and click "Modify".
This starts the installation wizard for the SDK itself.
Now you can edit which SDK features are installed. Select "MSI Tools" and click Change:
After the wizard completes, the Orca installer can now be found in the SDK's install path. On my machine, that's located at C:\Program Files (x86)\Windows Kits\10\bin\x86\Orca-x86_en-us.msi. Running that MSI package installs the latest version of Orca itself.

You can pick it from Windows SDK ISO.
Download the latest SDK ISO Image. Current one is 16299.15.
Mount it with Explorer and open the directory Installers. You can find the Orca-x86_en-us.msi.
Downloads Windows 10 SDK

We can download the latest Windows 10 SDK from here
When installing the SDK installer, select below feature alone and proceed installation
"MSI Tools"
Check below folder and look for Orca-x86_en-us.msi
C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x86
NOTE: In my C:\Program Files (x86)\Windows Kits\10\bin folder, I see multiple versions of windows 10 and one can see the orca MSI under the latest version number folder (under x86)

I was able to successfully download and install it the following way:
Download the Windows SDK as ISO file
Right-click on the ISO file (*_release_WindowsSDK.iso) and select "Mount"
Go to folder "Installers", find and extract "Orca-x86_en-us.msi" (drag and drop it to a local folder outside of the ISO)
Do the same with the 3 cab files listed below:
Double click the file "Orca-x86_en-us.msi", and Orca will be added to the Windows start menu.
NOTE: In the link provided above, you can find an archive of older, as well as newer Windows versions too - if required.

How to get orca installed without downloading the entire ISO
Go here: https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/
Click to download the installer (not the .iso)
Follow the prompts until you get this screen, where you uncheck everything but MSI stuff.
After the install completes, search the install folder for Orca.msi and
install it. It is usually in:
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\Orca-x86_en-us.msi" 

Related

Where does the .NET 6 Windows Desktop Runtime install to?

When I download and run windowsdesktop-runtime-6.0.1-win-x64.exe to install the .NET 6 Desktop Runtime on Windows, then it is not installed to C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\6.0.1 as expected.
This does not match the official documentation here: Check for install folders
Where are the files installed to and how can I detect if this package is already installed?
Problem occurred only on a machine where the .NET SDK (and VS2022) was already installed. It cannot be reproduced on a plain, naked Windows installation.
The runtime files I have located in the C:\Program Files\dotnet\shared\Microsoft.NETCore.App{version} folder.
Using a 3rd party IL disassembler, it asked me for the location of a .NET 6.0 System.Runtime.dll location.

Visual Studio 2017, Download Offline [duplicate]

I recently try to install Visual Studio 2017. But there is no offline installer. How to get offline installer for it.
I also tried to install Xamarin. Eventhough I have latest Android SDK, it ask me to download Android SDK again. How to rectify it?
Thanks in advance.
To produce an offline installer you first need to download the corresponding online installer, which will give you an installation file similar to one of these:
vs_enterprise.exe - Visual Studio 2017 Enterprise, download here
vs_professional.exe - Visual Studio 2017 Professional, download here
vs_community.exe - Visual Studio 2017 Community Edition, download here
Then all you have to do is this:
vs_WHATEVER.exe --layout path-to-empty-directory
Example, to create an offline installer for Visual Studio 2017 Community Edition you first download the online installer, then you execute this:
vs_community.exe --layout d:\temp
This will fill D:\Temp with all the files necessary to install Visual Studio.
Note: The installer will open a console window as part of its process, you need to wait until this window closes before you can safely use the contents of this folder.
There will be many sub-directories, depending on the packages available, but you will also have the original executable you downloaded placed into this directory. Executing this from this directory will install using the provided packages.
Also note that by default, unless you manually specify --add and package id's, all the packages will be downloaded. You will thus get a complete and current version to install offline. However, if you specify packages with the --add parameter, only the specified packages will be downloaded.
Source: Create a network installation of Visual Studio 2017

"Windows Kits\10\Redist\ucrt\DLLs" doesn't exist

I am trying to build a WebRTC library. It has a bunch of build python scripts one of which is trying to access
C:\Program Files (x86)\Windows Kits\10\Redist\ucrt\DLLs\x64
And copy ucrt Dlls into build directory.It fails there because my Redist directory doesn't have ucrt folder. I tried to uninstall my Windows SDK 10 and reinstall it.But Redist is still empty. Based on this doc by Microsoft:
To obtain the binaries for app-local deployment, install the Windows
Software Development Kit (SDK) for Windows 10. The binaries will be
installed to C:\Program Files (x86)\Windows Kits\10\Redist\ucrt.
But it simply doesn't happen.I also tried to reinstall all the Windows tools and SDK via my VS2015 (Community) installer.
Did Microsoft deprecate the redistributable part of the installation?
How can I solve this?
I installed Windows SDK 10.0.16299.0 . My system is Windows 10 64bit.
It happened to me. Both the visual studio installer and the standalone install incomplete/corrupt versions of the sdk.
Solution: Install the sdk in a windows VM (you can use the Microsoft provided vm: https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/) and install the SDK there, then copy the complete folder (named 10 in my case) to the appropriate route. In Windows 10 would be: *C:\Program Files (x86)\Windows Kits*
(Commenting 4 year later because I came here looking for the same answer :) )

How to install SignTool.exe for Windows 10

How to install SignTool.exe in Visual Studio 2015 for Windown 10?
I tried to build my project but the program threw an error :
Error An error occurred while signing: SignTool.exe not found.
You need to install the Windows 10 SDK.
Visual Studio 2015 Update 1 contains it already, but it is not installed by default. You should go to Control Panel -> Programs and Features, find Microsoft Visual Studio 2015 and select "Change".
Visual Studio 2015 setup will start. Select "Modify".
In Visual Studio components list find "Universal Windows App Development Tools", open the list of sub-items and select "Windows 10 SDK (10.0.10240)".
Windows 10 SDK in VS 2015 Update 1 Setup
Of cause you can install Windows 10 SDK directly from Microsoft: https://go.microsoft.com/fwlink/?LinkID=698771
As josant already wrote - when the installation finishes you will find the SignTool.exe in the folders:
x86 -> c:\Program Files (x86)\Windows Kits\10\bin\x86
x64 -> c:\Program Files (x86)\Windows Kits\10\bin\x64\
If you only want SignTool and really want to minimize the install, here is a way that I just reverse-engineered my way to:
Download the .iso file from https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk (current download link is http://go.microsoft.com/fwlink/p/?LinkID=2022797) The .exe download will not work, since it's an online installer that pulls down its dependencies at runtime.
Unpack the .iso with a tool such as 7-zip.
Install the Installers/Windows SDK Signing Tools-x86_en-us.msi file - it's only 388 KiB large. For reference, it pulls in its files from the following .cab files, so these are also needed for a standalone install:
4c3ef4b2b1dc72149f979f4243d2accf.cab (339 KiB)
685f3d4691f444bc382762d603a99afc.cab (1002 KiB)
e5c4b31ff9997ac5603f4f28cd7df602.cab (389 KiB)
e98fa5eb5fee6ce17a7a69d585870b7c.cab (1.2 MiB)
There we go - you will now have the signtool.exe file and companions in C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64 (replace x64 with x86, arm or arm64 if you need it for another CPU architecture.)
It is also possible to commit signtool.exe and the other files from this folder into your version control repository if want to use it in e.g. CI scenarios. I have tried it and it seems to work fine.
(All files are probably not necessary since there are also some other .exe tools in this folder that might be responsible for these dependencies, but I am not sure which ones could be removed to make the set of files even smaller. Someone else is free to investigate further in this area. :) I tried to just copy signtool.* and that didn't work, so at least some of the other files are needed.)
Here's where you'll find it:
C:\Program Files (x86)\Windows Kits\10\App Certification Kit
Screenshot:
Best solution end of 2020:
Just download Windows 10 SDK from Microsoft here:
https://go.microsoft.com/fwlink/?LinkID=698771
In setup, choose only Windows App Certification App (it's only 184 MB)
You can find signtool.exe here:
%PROGRAMFILES(X86)%\Windows Kits\10\bin\x64
Cheers!
As per the comments in the question... On Windows 10 Signtool.exe and other SDK tools have been moved into "%programfiles(x86)%\Windows Kits\".
Typical path to signtool on Windows 10.
32 bit = "c:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe"
64 bit = "c:\Program Files (x86)\Windows Kits\10\bin\x64\signtool.exe"
Tools for SDK 8.0 and 8.1 also reside in the "Windows Kits" folder.
Another answer from 2021.
You might not need Windows SDK at all. If you have VS-2019 installed, you might already have signtool in C:\Program Files (x86)\Microsoft SDKs\ClickOnce\SignTool\signtool.exe
NOTE: The good thing about this particular signtool version (compared to the Windows SDK one), is that it's self-contained, and does not need all the dll's next to it (mssign32.dll, wintrust.dll etc, which usually lie around in Windows SDK folders).
You can even add this file to your source code repo (just one file), since this tool hasn't changed since 2016.
P.S. I had this signtool even without "ClickOnce publishing" component installed in my Visual Studio Community Edition.
Location:
C:\Program Files (x86)\Windows Kits\10\App Certification Kit\signtool.exe
In 2019, this is a quite recent link from Microsoft about how to obtain this tool:
The SignTool tool is a command-line tool that digitally signs files,
verifies signatures in files, or time stamps files. For information
about why signing files is important, see Introduction to Code
Signing. The tool is installed in the \Bin folder of the Microsoft
Windows Software Development Kit (SDK) installation path.
SignTool is available as part of the Windows SDK, which you can
download from https://go.microsoft.com/fwlink/p/?linkid=84091.
I only needed signtool, so I chose the minimal I came up with and signtool.exe is now in C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe
Microsoft article link:
https://learn.microsoft.com/en-us/windows/win32/seccrypto/signtool
to install just the signingtools from the winsdksetup.exe (available at the same url as the windows sdk iso mentioned above) this is an option to, straight from the Dockerfile i'm working in:
RUN powershell Start-Process winsdksetup.exe -ArgumentList '/features OptionId.SigningTools', '/q', '/ceip off', '/norestart', -NoNewWindow -Wait
so if you're in windows then that'd be:
winsdksetup.exe /features OptionId.SigningTools
winsdksetup /h gives you the options, so i won't summarise them here.
I include the dockerfile snippet, as that is what i started my day looking for the solution for.
You don't have to install the Signtool. It might already be there.
Go to C:\Program Files (x86)\ and search for signtool.exe. In my system I found it under C:\Program Files (x86)\Microsoft SDKs\ClickOnce\SignTool
No matter which version of Windows you are using, the above signtool will solve your purpose.
If you're using VS Express 2015, just go to your control panel --> programs and features --> select vs 2015 --> click change, then in the VS Express installer select 'Modify' --> select Publishing tools, and finish. Once setup completes the changes you will be able to create your installer.
You should go to Control Panel -> Programs and Features, find Microsoft Visual Studio 2015 and select "Change".
Visual Studio 2015 setup will start. Select "Modify".
In Visual Studio components list, open the list of sub-items and select "ClickOnce Publication Tools" and "Windows 10 SDK" too.
I did a modify with the Visual Studio from Control Panel, Programs and Features. The SDK was not at first apparent so I installed the Common Tools which lo and behold did include the SDK Update 3.
It's available many, many places, depending upon what is installed:
On my box, every one except the v6.0A SDK version supports the /fd option.
SignTool is available as part of the Windows SDK (which comes with Visual Studio Community 2015). Make sure to select the "ClickOnce Publishing Tools" from the feature list during the installation of Visual Studio 2015 to get the SignTool.
Once Visual Studio is installed you can run the signtool command from the Visual Studio Command Prompt.
By default (on Windows 10) the SignTool will be installed in:
C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe
For me in 2021 the signtool.exe was here: "C:\Program Files (x86)\Windows Kits\10\bin\x64" or in: x86
and not under: C:\Program Files (x86)\Windows Kits\10\App Certification Kit
even if I have this folder and may files in it.
I ran into an issue using this tool in a restrictive Azure DevOps Pipelines environment, where I couldn't even expand PATH or call any tools from an absolute path outside of the ADO build directories, meaning in this case anything from C:\Program Files (x86)\
My solution was to package it as a Secure File in ADO Pipelines' Library -> Secure Files section, allow my pipeline to access the file via its security settings, then download it as a build task and run it via a powershell task.
In the example below, I just query the help with the /? command. Just replace that with whatever command you want to use.
- task: DownloadSecureFile#1
displayName: "Signtool Download"
name: MSSignTool
inputs:
secureFile: 'signtool.exe'
- task : PowerShell#2
displayName: "Run Signtool"
inputs:
targetType: "inline"
script: $(MSSignTool.secureFilePath) /?
Warning 1: I'm not sure what dependencies are required for signtool.exe to work standalone, or if it even has any. The Windows 10 SDK and ADK was already installed in this build environment. If querying the help causes the tool to fail or crash, make sure one or both of those are installed. Hopefully you will have access to something like choco to install any missing dependencies.
Warning 2: Be careful if copying those code segments. ADO is pretty strict with dynamic whitespace, so if your spacing is off it will brick your whole pipelines file until you adjust the spacing to its correct position.

Missing files in installation of InstallShield 2011 LE on Windows 7?

I have an InstallShield project (InstallShield 2011 Limited Edition) for Visual Studio 2010. The project is created on a machine running Windows XP (32-bit). It builds an installation package for a C# solution targeted to .NET 4.0 Full profile. However, the same project configuration fails to build installation packages on windows 7. It turns out that the installation of InstallShield itself is different in Windows 7 compared to Windows XP.
When building the installation package on WIndows 7, I get several errors like the following:
ISEXP : error : -1007: Cannot copy source 'C:\Program Files\InstallShield\2011LE\SetupPrerequisites\Windows Installer\3.1\x86\WindowsInstaller-KB893803-v2-x86.exe' to target ...
On Windows XP, there are 3 subdirectory structures in C:\Program Files\InstallShield\2011LE\SetupPrerequisites:
Windows Installer
3.1
Microsoft .net
4.0
WindowsImagingComponent
x64
x86
These directories and there files are missing after installation of InstallShield on Windows 7.
If I add the files manually, the Windows 7 machine can build the InstallShield project without problem.
Is this a bug in InstallShield or have I missed some features? I would like to be able to build installation packages both on Windows 7 and Windows XP without having to patch the InstallShield installation itself.
Typically you right click | download the files from the redist screen. Only the .PRQ (XML) files are in the InstallShield installer. The rest are pulled down once as you need them.

Resources