Command for Elastic Beanstalk configuration to install Visual C++ Redistributable - visual-studio

I am searching for a command that I can use in Elastic Beanstalk configuration file to install Visual C++ Redistributable for Visual Studio 2012 which I need for my web project to run.
I tried installing using msi which I built from the exe and put on S3 but it returned timeout:
The following instances have not responded in the allowed command timeout time (they might still finish eventually on their own)
And I still get the error:
Could not load file or assembly 'Magick.NET-x86.DLL' or one of its dependencies. The specified module could not be found.
Magick.NET needs the Visual C++ Redistributable for Visual Studio 2012 in order to run. Installing it manually is not an option as I need it pre-installed for auto scalability. Thanks.
Servers run on Windows Server 2012 / IIS8

I recently encountered the same problem. What I ended up doing was creating scripts that are bundled with the deployment that download the redistributable from my S3 store and then install on the server during deployment. Here is what I did:
Download the redistributable from http://www.microsoft.com/en-us/download/details.aspx?id=30679
Upload the redistributable to your S3 store and note the URL location.
In the .NET project, create a folder named .ebextensions at the
top level of the project (i.e., at the same level as the App_data,
App_Start, Content, etc. folders)
Create a file named myapp.config (replace myapp with whatever you like). I actually created two config files (myapp-1.config and myapp-2.config) because for whatever reason the deployer didn't like the commands in Step #5 to be in the same file (I'm still learning this so I most likely screwed something up, but this worked for me).
In the config file, place the following (files into myapp-1.config and commands into myapp-2.config):
files:
"c:\\somedirectoy\\vcredist_x64.exe":
source: https://s3.amazonaws.com/yours3location/2012vcredist_x64.exe
commands:
instlVC:
command: c:\\somedirectory\\vcredist_x64.exe /q /norestart
Now, when you deploy to the Elastic Beanstalk from Visual Studio 2012, the amazon deployment process will download the vcredist_x64.exe from S3 and then run the installer in quiet mode (no prompts, etc.).
Hopefully this helps and I welcome any improvements or suggestions on this approach.

Related

How should I publish .net6 web services with webdeploy if it is no longer supported

I already have my visual studio 2022 generated packages as .pubxml to pass to the client.
unfortunately when executing the installation through the console it shows me:
Prerequisites:
To deploy this Web package, Web Deploy (msdeploy.exe) must be installed on the computer that runs the .cmd file. For information about how to install Web Deploy, see the following URL:
https://go.microsoft.com/?linkid=9278654
This batch file requires that the package file "SettlementsApi.zip" and optionally provided the parameters file "SettlementsApi.SetParameters.xml" in the same folder or destination folder by environment variable.
When I go to install the tool, it tells me that I should download webdeploy but it is no longer available:
here you can see the redirection to the page
I already tried to install the tool but it tells me that it is already installed and according to what I have read it forces me to download the tool from the component platform in IIS but it is no longer supported.
How should I do this installation now?
download the installer at https://www.iis.net/downloads/microsoft/web-deploy and run it manually

Microsoft VS Installer -> Install my Software and SQL database

I made a Setup.exe for my software using "Microsoft Visual Studio Installer Projects".
My software uses Microsoft SQL Server and I also need it to be installed, then I went in my Setup.exe properties and selected "SQL Server 2019 Express LocalDB" to be installed also, but when I run the setup, it doesn't install the SQL Server on my machine.
How can I make this Setup.exe to install my software and also SQL Server at same time?
When you build a setup project with prerequisites the resultant output contains two files one is Setup.exe and the other is your project name . msi. The setup exe is responsible to check for prerequisite installed on a user system and prompt to install one if it doesn't exists, after which it launches your MSI automatically.
If you are using pre-available prerequisite in your project then they have system checks (if dependency already installed) pre-defined, but if you use your own bootstrap package then you have to write the checks for them yourself.
What I am assuming here is that you already have sql server installed on your system that is why you are not getting a prompt for its installation. Otherwise on any other system where sql server will be missing the exe will install it.

Publish to AWS Lamba - Failed to find the "build-lambda-zip" utility

I'm currently trying to publish my AWS lambda functions using Visual Studio 2019 community (v4.8.03752) and leveraging the AWS Toolkit for Visual Studio (v1.20.1.0). After right clicking my project and selecting 'Publish to AWS Lambda' I receive the following error:
- Zipping publish folder C:\Users\Matt\source\repos\programName\programName\.\bin\Release\netcoreapp3.1\publish to C:\Users\Matt\AppData\Local\Temp\HelloWorld-CodeUri-Or-ImageUri-637489827969959200.zip
- Failed to find the "build-lambda-zip" utility. This program is required to maintain Linux file permissions in the zip archive.
- Error packaging up project in C:\Users\Matt\source\repos\programName\programName\. for CloudFormation resource HelloWorld: Failed to find the "build-lambda-zip" utility. This program is required to maintain Linux file permissions in the zip archive.
I've been able to deploy this MANY times over previous months, up until Friday 2/12 when I started receiving this error (after a reboot). What's even more strange is that if I uninstall the AWS Toolkit for VS, then reinstall it, I'm able to publish successfully 1 time. With my 2nd attempt, I begin to receive this error again.
Steps I've taken to attempt to resolve:
Repair Visual Studio
Uninstall/Reinstall Visual Studio
Uninstall and reinstall amazon.lambda.tools using dotnet tool install -g Amazon.Lambda.Tools
Uninstall AWS Toolkit for VS, Reinstall toolkit. (This works for first deployment, fails when trying to deploy a 2nd time)
UPDATE:
Per some comments below, it looks like this is being caused by McAfee Real-Time Scanning. In checking the logs during a deployment I noticed a "Virus or threat found" record that points directly to the build-lambda-zip.exe file. To permanently avoid this issue moving forward please follow the steps provided by user2174794 in the comments below.
I'm having the same issue. Just started happening today. It was working within the last 2 weeks.
Failed to find the "build-lambda-zip" utility. This program is required to maintain Linux file permissions in the zip archive.
Running Windows 10, Visual Studio 2019
My solution for now is to use the .NET Core CLI
https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/lambda-cli-publish.html
Specifically, the
dotnet lambda deploy-function
A recent update must have broke the AWS Toolkit For Visual Studio.
I have the same problem, it was because my antivirus detect the executable build-lambda-zip.exe, then delete it.
I restore the executable from my antivirus, or restore dotnet tools with the command :
dotnet tool update -g Amazon.Lambda.Tools
I also faced the same issue,
This is because the "build-lambda-zip.exe" file is getting removed by the McAfee Antivirus.
For the permanent fix, you need to follow the below steps.
Step 1
Go to McAfee Settings >> Quarantined Items
You will find the "build-lambda-zip.exe" file there. Restore it to the original location.
Now If you will try to publish, the error won't get displayed. But again on the next scan, the file will get removed.
Step 2
We need to Exclude this file from getting Scanned and removed. So for that,
Go to McAfee Settings >> Real-Time Scanning and Add the "build-lambda-zip.exe" file in the Excluded files list.
For the file path of "build-lambda-zip.exe" got to
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Extensions\ and search for the file name.
Maybe you should try reinstalling the AWS Tool Kit and before you make deployments please turn off your antivirus protection. I was troubbling the same issue and my antivirus(McAfee) was deleting build-lambda-zip.exe file when I did deployment first time.
I'm curious about the state of the extension installation. Can you go to VS's extension directory in Windows explorer C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\Extensions and in the search box search for AWSToolkitPackage.dll.
Ideally it should only show one instance of that file. Assuming it finds a single instance right click on the file and select "Open File Location". Now that you are in the root folder of the AWS extension check the Resources folder and see if it contains the file build-lambda-zip.exe.
I know the question is in a windows system, but under a linux system, in my case the following command was needed:
sudo apt-get -y install zip

How to generate vcvarsall.bat

My visual Studio 2015 installed without vcvarsall.bat.
This is not about how to find this file and I am also not a python developer.
MSDN states at the bottom of this page:
The vcvarsall.bat file can vary from computer to computer. Do not
replace a missing or damaged vcvarsall.bat file by using a file from
another computer. Rerun Visual Studio Setup to replace the missing
file.
I am running the installation through our local IT department so I only get a fixed version of the setup. It looks like this setup does not install the batch file.
I wonder what other means of generating this "file" (actually it is several files and a folder structure) there are - how does the visual studio setup generate this file and is that generation possible without running the whole setup?
You have some option to "install" vcvarsall.bat.
The obvious to rerun VS setup and add c++ features (maybe your IT dep is kind enough and...)
Install visual c++ build tools
Install windows sdk (select c++ related components)

Where is Microsoft.Web.Publishing.targets?

My MSBuild proj file is referencing Microsoft.Web.Publishing.targets. Even though microsoft says MSBuild is standalone installation, i dont think this file is part of MSBuild.
I am trying to setup a build server. and i don't see this file at this location. We have installed .Net 4.5.2 installed on that server.
C:\Program Files
(x86)\MSBuild\Microsoft\VisualStudio\vXX.X\Web\Microsoft.Web.Publishing.targets
After researching I found, I have to install VisualStudio to get this at that location.
Questions
Is there any way to install this Target (and other Targets at this location) without having to install visual studio?
Yes, you can use the MSBuild.Microsoft.VisualStudio.Web.targets package.

Resources