ODBC Drivers + No Shortcut Apps

%3CLINGO-SUB%20id%3D%22lingo-sub-2532353%22%20slang%3D%22en-US%22%3EODBC%20Drivers%20%2B%20No%20Shortcut%20Apps%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2532353%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20All%2C%3C%2FP%3E%3CP%3EI%20am%20new%20to%20MSIX%2C%20Could%20you%20please%20provide%20some%20information%20for%20the%20below%20points.%3C%2FP%3E%3CP%3E1.%20Is%20it%20possible%20to%20create%20MSIX%20package%20with%20the%20installer%20having%20ODBC%20Drivers%20with%20out%20any%20Shortcuts%2FEntryPoints%3F%3C%2FP%3E%3CP%3E2.%20How%20to%20Handle%20User%20settings%2FConfigurations%20which%20stores%20in%20AppData%20or%20in%20HKCU%3C%2FP%3E%3CP%3E3.%20Can%20anyone%20provide%20the%20user%20guidance%20or%20any%20demo%2Flinks%20to%20use%20PsfTooling%204.8%3F%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThanks%20in%20Advance.%3C%2FP%3E%3CP%3EThanks%20%26amp%3B%20Regards%2C%3C%2FP%3E%3CP%3ESiva%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2532353%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EMSIX%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3ENo%20Shortcuts%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EODBC%20Drivers%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2533825%22%20slang%3D%22en-US%22%3ERe%3A%20ODBC%20Drivers%20%2B%20No%20Shortcut%20Apps%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2533825%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F1099635%22%20target%3D%22_blank%22%3E%40Siva116%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EStarting%20off%20with%20the%20easy%20stuff%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EYou%20can%20create%20a%20package%20without%20any%20shortcuts.%26nbsp%3B%20Your%20%22ODBC%20Driver%22%20consists%20of%20registry%20settings%2C%20plus%20optionally%20something%20like%20an%20oracle%20client%20that%20acts%20as%20middleware.%26nbsp%3B%20The%20question%20is%20how%20to%20tie%20that%20to%20the%20primary%20app%20that%20will%20use%20it%3F%26nbsp%3B%20Assuming%20that%20the%20primary%20app%20is%20also%20MSIX%3A%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3EUnder%20the%20currently%20released%20OS's%2C%20your%20only%20choice%20is%20to%20create%20your%20driver%20package%20as%20a%20%22Modification%20Package%22%2C%20which%20in%20essence%20is%20a%20layered%20add-on%20to%20the%20primary%20package.%26nbsp%3B%20This%20is%20a%20great%20use%20when%20you%20have%20a%20primary%20package%20that%20must%20work%20with%20several%20back-ends%20(such%20as%20dev%2Ftest%2Fprod)%20and%20you%20deploy%20the%20primary%20app%20plus%20the%20modification%20package%20with%20settings%20that%20you%20need.%3C%2FLI%3E%0A%3CLI%3EIn%2021H2%20we%20expect%20to%20see%20(it%20is%20available%20in%20preview%20versions)%20%22Shared%20Package%20Containers%22.%26nbsp%3B%20This%20would%20allow%20a%20different%20workflow%20for%20creating%20your%20settings%20package%2C%20potentially%20allowing%20more%20flexibility%20(such%20as%20applying%20these%20settings%20to%20multiple%20main%20packages).%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3EBut%20ultimately%2C%20it%20would%20be%20best%20to%20have%20A%20package%20contain%20a%20shortcut%2C%20even%20if%20it%20uses%20a%20natively%20installed%20app%20under%20the%20covers.%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThere%20are%20some%20other%20obscure%20options%20involving%20the%20Powershell%20cmdlet%20to%20start%20a%20native%20process%20in%20a%20container%2C%20but%20those%20only%20work%20on%2020H2%20and%20above%20and%20are%20a%20kludge%20at%20best%20and%20should%20be%20avoided.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EIn%20regard%20to%20AppData.%26nbsp%3B%20As%20long%20a%20your%20package(s)%20don't%20specify%20any%20AppData%20files%20and%20they%20are%20generated%20by%20running%20the%20app%2C%20you%20probably%20don't%20need%20the%20PSF.%26nbsp%3B%20If%20you%20do%2C%20PsfTooling%204.10%20is%20the%20latest%20version.%26nbsp%3B%20Using%20the%20Psf%20requires%20a%20shortcut%20in%20that%20package%2C%20but%20you%20could%20make%20that%20work%20whether%20or%20not%20the%20target%20exe%20is%20inside%20of%20a%20package.%26nbsp%3B%20The%20details%20are%20complicated%2C%20but%20the%20tool%20has%20in-built%20help.%26nbsp%3B%20The%20missing%20part%20for%20you%20might%20be%20how%20to%20create%20the%20overall%20scenario%20before%20running%20the%20tool.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EI%20understand%20this%20might%20not%20be%20a%20complete%20answer%20for%20you%2C%20but%20start%20with%20this%20and%20come%20back%20with%20specific%20questions%20and%20more%20details%20on%20the%20scenario.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2539107%22%20slang%3D%22en-US%22%3ERe%3A%20ODBC%20Drivers%20%2B%20No%20Shortcut%20Apps%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2539107%22%20slang%3D%22en-US%22%3E%3CP%3EThank%20you%20very%20much%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F149589%22%20target%3D%22_blank%22%3E%40Tim%20Mangan%3C%2FA%3E%20for%20the%20information%3CBR%20%2F%3EHere%20are%20the%20requirement%20requirements%3A%3CBR%20%2F%3ETarget%20OS%20%3A%20Win%2010%2021H1%3CBR%20%2F%3E1.%20I%20working%20on%20a%20standalone%20applicaiton%20IBM_Netezza%20which%20has%20ODBC%20drivers%20and%20with%20no%20shortcuts.%20while%20I%20install%20the%20application%20on%20target%20machine%2C%20I%20am%20able%20to%20see%20the%20ODBC%20drivers%20in%20the%20%22ODBC%20Data%20Source%20Administrator%22%20console%20(odbcad32.exe).%20but%20when%20the%20install%20the%20MSIX%20package%20in%20target%20machine%2C%20I%20am%20not%20able%20to%20see%20those%20ODBC%20drivers%20and%20I%20tried%20to%20open%20virtual%20container's%20cmd.exe%20with%20Invoke-CommandInDesktopPackage%2C%20but%20its%20not%20successful...%20got%20an%20error%20%22%20Cannot%20create%20a%20file%20when%20that%20file%20already%20exists%22.%3C%2FP%3E%3CP%3ECould%20you%20please%20suggest%20best%20approach%20to%20handle%20this%20instead%20of%20Modification%20Package%2C%20as%20its%20is%20a%20standalone%20package%20for%20me.%3CBR%20%2F%3E%3CBR%20%2F%3E2.%20coming%20to%20AppData%2C%20I%20tried%20to%20create%20MSIX%20VLC%20player%20package%2C%20at%20the%20time%20first%20launch%20run..%20I%20unchecked%20auto%20update%20check%20option%20and%20this%20option%20stored%20in%20.ini%20file%20at%20user's%20AppData%20folder.%20once%20after%20completion%20of%20the%20MSIX%20package...%20I%20installed%20MSIX%20package%20on%20clean%20VM%20and%20launched%20to%20verify%20whether%20the%20Auto%20Updates%20were%20suppressed%20or%20not...%20but%20its%20not%20suppressed%3F%20In%20such%20scenario%2C%20how%20we%20will%20handle%20the%20files%20or%20setting%20stored%20in%20Appdata%20location%20and%20also%20with%20the%20same%20scenario%2C%20what%20if%20the%20setting%20stored%20in%20HKCU%3F%20when%20I%20open%20the%20package%20in%20Edit%20mode..%20I%20am%20able%20to%20see%20the%20ini%20file%20in%20Appdata%20folder%20under%20VFS%20section%2C%20but%20once%20we%20install%20the%20app..%20its%20not%20able%20to%20read%20the%20data%20there%3F%3F%3CBR%20%2F%3ECould%20you%20please%20suggest%20the%20best%20approach%20to%20handle%20these%20scenarios.%3CBR%20%2F%3EThanks%20in%20Advance.%3C%2FP%3E%3C%2FLINGO-BODY%3E
Occasional Contributor

Hi All,

I am new to MSIX, Could you please provide some information for the below points.

1. Is it possible to create MSIX package with the installer having ODBC Drivers with out any Shortcuts/EntryPoints?

2. How to Handle User settings/Configurations which stores in AppData or in HKCU

3. Can anyone provide the user guidance or any demo/links to use PsfTooling 4.8?

 

Thanks in Advance.

Thanks & Regards,

Siva

2 Replies

@Siva116 

 

Starting off with the easy stuff:

 

You can create a package without any shortcuts.  Your "ODBC Driver" consists of registry settings, plus optionally something like an oracle client that acts as middleware.  The question is how to tie that to the primary app that will use it?  Assuming that the primary app is also MSIX:

  • Under the currently released OS's, your only choice is to create your driver package as a "Modification Package", which in essence is a layered add-on to the primary package.  This is a great use when you have a primary package that must work with several back-ends (such as dev/test/prod) and you deploy the primary app plus the modification package with settings that you need.
  • In 21H2 we expect to see (it is available in preview versions) "Shared Package Containers".  This would allow a different workflow for creating your settings package, potentially allowing more flexibility (such as applying these settings to multiple main packages).

But ultimately, it would be best to have A package contain a shortcut, even if it uses a natively installed app under the covers. 

 

There are some other obscure options involving the Powershell cmdlet to start a native process in a container, but those only work on 20H2 and above and are a kludge at best and should be avoided.

 

In regard to AppData.  As long a your package(s) don't specify any AppData files and they are generated by running the app, you probably don't need the PSF.  If you do, PsfTooling 4.10 is the latest version.  Using the Psf requires a shortcut in that package, but you could make that work whether or not the target exe is inside of a package.  The details are complicated, but the tool has in-built help.  The missing part for you might be how to create the overall scenario before running the tool.

 

I understand this might not be a complete answer for you, but start with this and come back with specific questions and more details on the scenario.

Thank you very much @Tim Mangan for the information
Here are the requirement requirements:
Target OS : Win 10 21H1
1. I working on a standalone applicaiton IBM_Netezza which has ODBC drivers and with no shortcuts. while I install the application on target machine, I am able to see the ODBC drivers in the "ODBC Data Source Administrator" console (odbcad32.exe). but when the install the MSIX package in target machine, I am not able to see those ODBC drivers and I tried to open virtual container's cmd.exe with Invoke-CommandInDesktopPackage, but its not successful... got an error " Cannot create a file when that file already exists".

Could you please suggest best approach to handle this instead of Modification Package, as its is a standalone package for me.

2. coming to AppData, I tried to create MSIX VLC player package, at the time first launch run.. I unchecked auto update check option and this option stored in .ini file at user's AppData folder. once after completion of the MSIX package... I installed MSIX package on clean VM and launched to verify whether the Auto Updates were suppressed or not... but its not suppressed? In such scenario, how we will handle the files or setting stored in Appdata location and also with the same scenario, what if the setting stored in HKCU? when I open the package in Edit mode.. I am able to see the ini file in Appdata folder under VFS section, but once we install the app.. its not able to read the data there??
Could you please suggest the best approach to handle these scenarios.
Thanks in Advance.