How to setup GStreamer Editing Services 1.2.0 (GES) environment on windows VS2012 or VS2010 - c

I just downloaded gstreamer 1.2.4 both normal and developer packs from here, and performed full installs of both packs.
Then I added bin location to path variable, then created c++ solution and added x86.props and gstreamer-1.0.props. I wanted to check some basic GES project, but I'm unable to do it since not all dependencies are resolved. Visual studio 2012 shows:
cannot include file : 'ges/ges-version.h'. No such file or directory.
How can I setup GES working environment on Visual Studio? What props do I need to add to my solution?

The missing gst-editing-services-1.0.props file was added in 1.2.4.1 version. You can download it from here http://gstreamer.freedesktop.org/data/pkg/windows/1.2.4.1/ .

Related

Microsoft.Bcl.AsyncInterfaces error (in CSVHelper method) when running the application installed by Visual Studio Setup project

I have a WPF application that reads a CSV file using CSVHelper which I installed using NuGet. Here's the project, system, etc version info.
Microsoft Windows 7 Professional Version 6.1.7601 Service Pack 1 Build
7601
Microsoft Visual Studio Community 2019 Version 16.4.5
NuGet Package Manager 5.4.0
WPF Project Target Framework: .NET Framework 4.7.2
CSVHelper Version: 15.0.5
CSV reader method is straightforward; read a file and put it in a list. Nothing fancy. I'll link the entire project at the bottom so you can download and try it out if you want.
When I run the executable made in either Release or Debug builds, they work fine. They read the file, put contents in a list, and display on a DataGrid just fine. As a next step, I created a standard Visual Studio Setup project, and created an msi installer, which I used to install the app in my PC.
When I run that executable (which is in my Program Files directory), however, the application throws an exception. Here's the exception message and Stack Trace.
Could not load file or assembly 'Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (Exception from HRESULT: 0x80131058)
at ReadCSVTest.MainWindow.ReadPeopleList(String path, List`1& people, String& msg)
at ReadCSVTest.MainWindow..ctor()
Since the error says couldn't load the assembly Microsoft.Bcl.AsyncInterfaces, I added that from NuGet and ran everything again, and I still get the error. What's the problem here? What does it mean that Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context.? And why do I only get this exception when I run the executable installed by the Setup project?
Please download the entire project from HERE.
Just so anyone runs into the same issue in the future; as Jones suggested in the comments, downgrading each of the two libraries to following versions fixed the issue for me.
CsvHelper ==> 12.3.2
And
Microsoft.Bcl.AsyncInterfaces ==> 1.0.0

VS2017 MSBuild autodetection takes MSBuild/v14 instead of v15 for WPF project

We are slowly migrating to VS2017 and most of the project do that silently without much interference. Today started migrating a WPF project from VS2015 to VS2017. When I build the solution I get the following warning:
MSBuild auto-detection: using msbuild version '14.0' from 'C:\Program Files (x86)\MSBuild\14.0\bin'.
I googled the problem but I seem to be alone out there. I have no clue what could cause this. The .Net target is 4.5.1 but changing that to 4.6.2 make no difference. Neither does clean or remove bin and obj directories. Who has got a clue?
I encountered this problem while building from the command line after migrating from VS2017 to VS2019 for a solution containing class libraries. I found I had VS2017's version of MSBuild in my PATH environment variable - C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin. Removing that path from the environment variable and re-opening my console solved the issue.
VS2017 MSBuild autodetection takes MSBuild/v14 instead of v15 for WPF project
You can try to update the version of nuget.exe to the 4.0 and above in the .nuget folder.
Visual Studio 2017 comes with NuGet 4.0 and NuGet 4.0 Package Manager Extension is currently not available for Visual Studio 2015 (Visual Studio 2015 comes with NuGet 3.4.4, and NuGet 3.5.0 is available as an explicit download for Visual Studio 2015 as well).
According to your comment, it seems the old nuget.exe not detect the MSBuild version 15.0, so please try to update the nuget.exe to 4.0 and above in the .nuegt folder.
Besides, I found your solution that is still configured by old package restore method "MSBuild-integrated restore", which is the original Package Restore implementation and though it continues to work in many scenarios, it does not cover the full set of scenarios addressed by the other two approaches.
Automatic Package Restore is the NuGet team's recommended approach to Package Restore within Visual Studio. You can convert to use the automatic package restore. Check the following thread for details:
Nuget: Switching from "Enable Package Restore" to "Automatic Package Restore"
Hope this helps.

Can i change path of TestTools.UITest.Dll in wpf?

Hi sorry for that question but, it is possible to change location reference OF TEST dll???
I have VS 2015 enterprise, i copy all DLL test in my subversion folder, add the reference but VS don't change the path... the path is alwais :
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.TestTools.UITest.****.dll
could you help me please?
path issue
The best way I've discovered is to collect your required .dlls and package them together using NuGet. Then you can change your project references to the NuGet package rather than those in the default installation.
So: Yes, change your .csproj files (unless you're working in .NET Core)

Portable Extensible Metadata (PEM) and Visual Studio 2013

In a previous project, I used the "Portable Extensible Metadata" tool. It was helpful in that it allowed me to store the label text and the tooltip text in the EMDX and show them in the WPF-UI. The feature to store the valuation is also nice, but I donĀ“t need it urgently.
Now I use VS2013 and I can't install PEM anymore. How can I find a updated version of this extension? Where can I find the source code so that I can compile a custom-version for my project?
I am working on a project which involves the same setup, that is, PEM using VS2013.
Earlier when I was using VS2010, it gave me the option of product VS2010 only for this extension(pem.VSIX) to be installed to. Even now, when I have VS2013 installed on my machine, it gives the same option of installing this extension to VS2010 and not VS2013, as I tried uninstalling and re-installing this extension. Please refer to the screenshot.
Just to mention, the extension can be installed simply be double-clicking on it.
The following is what I did and it worked for me.
Look for PEM_VSIX2012 on the internet or just make changes to the VSIX for VS2010 that you have at your disposal. Open this archive using 7-Zip tool and you will find a bunch of files. Look for the file "extension.vsixmanifest" and edit it in the 7-Zip archive window itself. There's a tag as mentioned below along with the tags for VisualStudio versions.
You just need to add the VisualStudio Verion to it that you are using.
<SupportedProducts>
<VisualStudio Version="10.0">
<Edition>VST_All</Edition>
<Edition>Pro</Edition>
</VisualStudio>
<VisualStudio Version="11.0">
<Edition>VST_All</Edition>
<Edition>Pro</Edition>
</VisualStudio>
<VisualStudio Version="12.0">
<Edition>VST_All</Edition>
<Edition>Pro</Edition>
</VisualStudio>
</SupportedProducts>
Like I added the following to the "extension.vsixmanifest" file.
</VisualStudio>
<VisualStudio Version="12.0">
<Edition>VST_All</Edition>
<Edition>Pro</Edition>
</VisualStudio>
Next, as I stated earlier, you should be able to install the extension simply by double-clicking on it. But if that doesn't works out, try this:
Run 'Developer Command Prompt for VS2013' as Administrator
and use the VSIXInstaller tool to install the extension by running the following command:
VSIXInstaller "path_to_VSIX_file"
Now pack the contents back into a zip-archive. Make sure the archive have the VSIX extension.
And as shown in the image above, alongwith VS2010, VS2013 would also be shown for installing this extension to.
Hope this helps.

In Visual Studio 2012 where does ClickOnce "Publish" expect to find the .Net 4 client profile?

The Publish feature stopped working once I installed Visual Studio 2012. Publish cannot find the prerequisite Microsoft .Net Framework 4 Client Profile (x86 and x64). Previously in Visual Studio 2010 this worked fine. I use 64-bit Windows 7.
The exact Visual Studio 2012 error message reads:
Error 104 - To enable 'Download prerequisites from the same location
as my application' in the Prerequisites dialog box, you must download file
'DotNetFX40Client\dotNetFx40_Client_x86_x64.exe' for item 'Microsoft .NET
Framework 4 Client Profile (x86 and x64)' to your local machine. For more
information, see http://go.microsoft.com/fwlink/?LinkId=239883
I placed the file dotNetFx40_Client_setup.exe in the location:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\Bootstrapper\Packages\DotNetFX40Client
I also left it in it's original location (note the v7.0A):
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX40Client
Edit (after solving the problem): I see that the correct setup file (dotNetFx40_Client_x86_x64.exe) is actually in the v7.0A folder. Had I just copied it from there everything would have worked (rather than downloading the wrong setup).
Publish works fine when I change the option "Download prerequisites from the same location as my application" to "Download prerequisites from the component vendor's website" (at project Properties -> Publish -> Prerequisites...)
I noticed a yellow exclamation point beside the (checked) "Windows Installer 3.1" with the warning: "Prerequisite could not be found for bootstrapping". For that I have the file WindowsInstaller-KB893803-v2-x86.exe in the folder:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\WindowsInstaller3_1
The application has run fine within my company's network for the past year when published with Visual Studio 2010. I opened the solution file in VS 2012 (for the first time) and it compiles and runs fine locally. Only the Publish feature is broken.
Am I missing something? Where is ClickOnce Publish expecting to find these prerequisites for my WPF application?
I'm answering my own question. The problem went away when I used a different .Net 4 Client setup program. The exe that works for me is dotNetFx40_Client_x86_x64.exe found at:
http://www.microsoft.com/en-us/download/details.aspx?id=24872
The wrong setup program is dotNetFx40_Client_setup.exe which I was led to by following the Microsoft MSDN help topic How to: Include Prerequisites with a ClickOnce Application (Visual Studio 2012) which led me to this link to the setup. I use Chrome which downloaded the web installer which I didn't realize was not the file I needed. Had I been using IE none of this would have happened. I was clued into the problem by this StackOverflow question which suggests renaming the setup program. Instead of renaming it I just downloaded the correct one.
re: Windows installer: VS2012 doesn't include the same prerequisites as VS2010, but you can copy the package from the previous SDK folders to the new one, and it will magically show up in the prerequisite list in VS2012 and work!

Resources