Compatibility with .NET Framework 3.5 - listlabel

I’m using, integrated in my software, List&Label 16 and now I would like to upgrade it to the version 24.
I have a couple of question:
I’m using, for historical reasons, .NET Framework 3.5, and I’m
building my Visual Studio project with this framework. Can anyone
confirm that List&Label 24 is fully compatible with .NET framework
3.5?
Opening the LL viewer and editor from my application I cannot save any file in the C:\Program FIles… folder of my application. Should I change the folder? Or there is some workaround to write in one folder under the path C:\Program files…?
Thanks to all
Regards

Yes, LL24 is fully compatible with .NET 3.5
Basically, this is a Windows question. The viewer can open files from whatever location you have access to. There are several APIs in the product (e.g. LlPreviewSetTempPath) to set the temporary path for printing and exporting. On Windows 10, the default of your app should be somewhere in the Documents path of the user

Related

Windows Media Player Plugin Development in Windows 10 (Visual Studio 2019)

I'm looking to create a very simple UI plugin for Windows Media Player, similar to this: https://obsproject.com/forum/resources/windows-media-player-title-artist-text-output-ticker.402/, but with the ability to choose the path and name of the text file.
I haven't been able to find any answers to WMP Plugin development questions on here since 2013, and the last actual answer give was for Visual Studio 2008. I'm now using Visual Studio 2019, so almost all of the tutorials, guides, and FAQs are massively out of date.
I've been following the setup guide here: https://learn.microsoft.com/en-us/previous-versions//aa969437(v=vs.85)?redirectedfrom=MSDN
After a few hours, I've finally been able to install the Windows 7.1 SDK by deleting all my C++ 2010 redistributables, and temporarily rolling back my .NET Framework 4 version to RTM. I now have wmpwiz.ico, wmpwiz.vsdir, and wmpwiz.vsz.
The interal version of VS2019 is 16.0, so I've edited my wmpwiz.vsz file to read:
VSWIZARD 7.0
Wizard=VsWizard.16.0
Param="WIZARD_NAME = Windows Media Player Plug-in Wizard"
Param="ABSOLUTE_PATH = C:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\WMP\Wizards\wmpwiz"
Param="FALLBACK_LCID = 1033"
and I've placed the three files into %UserProfile%\Documents\Visual Studio 2019\Templates\ProjectTemplates\Visual C++ Project\, but nothing shows up in the Start New Project window.
Obviously, I'm using technology that hasn't been touched for over a decade, so I don't know if this approach will even work anymore. Are there any modern guides on how to do this, or would it be quicker and easier to try to dig out my old VS2005 install disks, and hope they're not too scratched?
If this SDK Sample has been depreciated with age, are there any other wizards available that can be used for WMP plugin development? Preferably using C#, as I'm a .NET programmer, but I'm happy to trawl through C++ if I absolutely have to.
Thanks for any help you can give.

Deploying .NET Framework 4.5 with Installshield

I have written an application that I deploy via Clickonce, but I want to deploy it via Installshield, so I am experimenting with it. I found and downloaded dotnetfx45_full_x86_x64.exe, the redistributable for .NET Framework 4.5, and made a Installshield prerequisite from it. I wrote a simple application that has a RDLC report that just says “Hello World”, and it needs .NET Framework 4.5, and used Installshield to deploy it. The Reportviewer needs Microsoft SQLClrTypes_x86.msi and SQLClrTypes_x64.msi, and ReportViewer.msi, so I got those and made Installshield prerequisites from them. For the ReportViewer.prq, I specified SQLClrTypes_x86.prq and SQLClrTypes_x64.prq, as dependencies, and for SQLClrTypes_x86.prq and SQLClrTypes_x64.prq I specified dotnetfx45_full_x86_x64.prq as a dependency.
When I installed my little application on my test computer (running Windows 7), it installed the 4.5 framework, said it needed to reboot, and asked if I wanted to reboot now, and I clicked Yes. I was thinking it would reboot and continue the installation, but when it rebooted, that was the end of the installation. I ran setup again, it asked if I wanted to install the 4.5 Framework (it asked me the first time, too), so I clicked No. After clicking No, it installed the rest of my program, and it ran perfectly.
How can I get the installation to continue after it reboots from installing the .NET Framework 4.5?
Thanks
Here's a blog I wrote about 9 years ago:
Using InstallShield 12 to Install .NET Framework 3.0
It hasn't changed much. You want to use the prereq editor to change the reboot behavior to Note it, fail to resume if the machine is rebooted, and reboot after the installation.
Also please note that InstallShield consumes it's PRQ files from the ISProductFolder (C:\Program Files (x86)\InstallShield.... ) I don't care for this from a CM perspective. I recommend isolating the file and file references to relative paths based on ISProjectFolder and keeping all of these files in your source control tool.
Behavior Tab

Enterprise Library 5.0 don't show namespace Microsoft.Practices.EnterpriseLibrary.Data

I was using Visual Studio 2008 with Enterprise Library 4.0. It is working fine and showing namespace Microsoft.Practices.EnterpriseLibrary.Data. Now I installed VS 2010 and Enterprise Library 5.0.(because 4.0 sowsn't support vs 2010 ).
But the problem is Enterprise Library 5.0 doesn't show Microsoft.Practices.EnterpriseLibrary.Data. Is there another namespace in 5.0 thriugh which I can access the Database class which comes under Microsoft.Practices.EnterpriseLibrary.Data namespace?
please let me know.
You are probably targeting .NET Framework Client Profile. The Data Access Block has dependencies on System.Data.Oracle and requires the full .NET Framework.
For anyone else hitting this problem with moving their DAAB-based app to .NET4, entlib5 is supplied with the source code installable via e.g. C:\Program Files (x86)\Microsoft Enterprise Library 5.0\src\Enterprise Library 5.0 - Source Code.msi
Running that msi and accepting the defaults creates a EntLib50Src folder under your Documents area. If you go into EntLib50Src\Blocks\Data and open Data.2010.sln you can change the target framework to .NET Framework 4 Client Profile.
This will create a bunch of errors related to the System.Data.Oracle dependency. Remove the reference to it, and then exclude the Oracle parts of the project and comment out any Oracle references in the common code.
If you then recompile with strong name signing on you can use the output assemblies (Microsoft.Practices.EnterpriseLibrary.Common.dll and Microsoft.Practices.EnterpriseLibrary.Data.dll) with .NET Framework 4 Client Profile. You do have to distribute Microsoft.Practices.Unity.dll from the e.g. C:\Program Files (x86)\Microsoft Enterprise Library 5.0\Bin area but this is client profile-compatible.
Note that the above works if you're not needing Oracle support in your app. Mine doesn't, its SQL Server and VistaDB only. The above should work with any non-Oracle db compatible with ADO.NET.

Migrate Enterprise Library 4.1 to 5.0

We are using enterprise library 4.1 and smart client software factory 2008 to our application.
how we can upgrade enterprise library 5.0 and SCSF 2010 to our application.presently we are using visual studio 2008.
To upgrade what are the thing needs to be taken care.
Early help would be appreciated.
In terms of Enterprise Library, the best case scenario would be to replace the 4.1 assembly references with 5.0 assembly references and change the configuration (to use 5.0 references instead of 4.1 references). However, you could also hit some issues.
You should read the Microsoft Enterprise Library 5.0 Migration Guide for a full description. The Breaking Changes document could also help you determine if you may run in to migration issues.
For the Smart Client Software Factory the approach appears the same: change the references and configuration to use the new dlls. The Web Client Software Factory 2010 Documentation download has a section on Migrating to Visual Studio 2010.
Install the 5.0 package.
remove all the previous refreneces and add the newer ones generated.
You can refer the dlls by copying it to some folders or directly from the location where you have installed (C:\programfiles\Microsoftenterpriselibrary5.0)
I faced the below issues while migrating
Configuration errors in web.config files - some of my references in the web.config files were refering to the older version(2.0.0.0)(i upgraded from 2.0 to 5.0) and the publictokenkey="null"
so i pushed all the dlls to the gac and added the publicktokenkey from the c:\windows\assembly. which solved the issue
And another issue was regarding the microsoft.practices.enterpriselibrary.caching.cryptography- it was displaying soem weird error.- solution-the bin folder was having the old dlls and when tried to
clean the solution the dll reference was still there. SO i deleted all those from the folder and rebuild again.
IT was initially having the logicacmg.enterpriselibraryextensions.logging which caused some issues- i used the microsoft.practices.enterpriselibrary.logging.configuration.rollingflatfiletracelistenerdata which could solve the issue.
Hope some one might get some inputs with this post

Does Windows Installer use Assembly Version or File Version to update dlls

I have a .net (2.0) winforms application that I need to upgrade on client machines. At the moment this is done by incrementing the Assembly Version and File Version on all of the projects and incrementing the version on the Installer project in VS2008.
The application now makes use of Isolated Storage to save some user settings in an XML file (grid layouts etc...).
The problem I am now facing is that if I increment all the version numbers, the application has a new location for its Isolated Storage, because the File Version has changed. With a new location for isolated storage, all the settings have effectively been lost.
When upgrading does Windows installer replace the dlls based on the File Version or the Assembly Version?
If it is the Assembly Version then all I'd have to do is not increment the File Version.
Some good reading and discussion here:
http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/6ed4d384-f6e9-42ee-b485-0bf40d0abd65/
To answer your question, though, I believe that MSI's respect FileVersion primarily:
File Versioning Rules