per machine install of mapi custom form server(message based) - c++

I have a custom message form server which i am installing on terminal server based on windows server 2003 and 2008.
I want to do per machine install, i don't seem to get how to install it for all the domain users logging on to the machine.
If i use http://msdn.microsoft.com/en-us/library/cc815785.aspx Installform, i can install to a local form library or a personal form library which are user specific.
I don't want to install to organizational form library, if it cannot be done through msi based installer.
What do i have to do make the form server available to all users, i have tried doing MapiOpenLocalFormContainer and then InstallForm but that seems to only work for the calling user (administrator in this case)
Regards,
rui

I've used this approach before:
Using Active Setup to Repair User Settings
You'll have to adapt it to your needs but I find it works well. They describe how to do it in InstallShield but it applies to WiX as well.

Make the property ALLUSERS='1' it will do the per machine installation

In the end i had to install form on first launch of outlook for each user in their respective local form container and on uninstall of our software, i did all the user profile enumeration and cleared the FRMCACHE.DAT.
Also there is a very useful registry key ForceFormReload described here http://support.microsoft.com/kb/919596
Thanks for all the answers.

Related

How to check Which version is installed of Web form for marketer in Sitecore 8

How I can check for WFFM version that have installed in Sitecore 8.
I was checking in List of Package inside Data/Packages folder . Is this correct way to do this ?
That's one of the options, but it's not necessarily correct. One can upload a package to that folder but never install it.
You can also check WFFFM dlls in the bin folder and see their version.
And maybe the most reliable way: login to Sitecore Desktop, change database to core and in Content Editor find /sitecore/system/packages/installation history node. There should be a list of all packages which are installed in your Sitecore application including their versions.
Look in the sitecore general log at application startup, all dlls are listed including version numbers.
I found one more way All Application ==> System ==> License detail ,there i found the version of WFFM.

Eclipse - How to deny files build/compilation?

I started using Eclipse with TFS (Team Foundation Server) to control file versions, but now I need to control the build/compile access. The idea is similar to the version control system, but it is now related to the project and machines.
Is there a way to control/deny the compilation of specific files with a plugin or not inside Eclipse?
It seems what you want is to manage users to access the project. You can add the users to the Readers group or set permission for a single user.
Check this article for more details:
https://msdn.microsoft.com/en-us/library/ms252477.aspx
If you are asking about permissions to repositories, VisualSVN Server fully supports path-based authorization and you can manage it through VisualSVN Server Manager console, Windows PowerShell and Repository Configurator tool.
Read the article KB33 | Understanding VisualSVN Server authorization to learn more about the permissions.
BTW, I second #alroc's comment:
Why would one use a version control system to control what source
files are compiled in the build process?
It seems to me that you are planning to use some awkward approach to control your builds. How does built relate to your version-control system? You should tell the build machine which projects and how to build them. Version control system can only control the authorization part in this case.

Creating a manifest file inside of /Library/Google/Chrome/NativeMessagingHosts requires super user permissions

This is on Mac 10.8
I have written Google Chrome Extension and a Native Messaging executable which communicates with the Chrome Extension using Native Messaging. All works fine with my Proof of Concept as part of development.
Issue is that now I want to get it deployed.
I have my in house installer which by which I need to create a com.my_company.my_product.json manifest file inside of this /Library/Google/Chrome/NativeMessagingHosts directory which cannot be accessed unless I ask for the password of the admin user.
I am doing this port as part of migration of NPPlugin to Chrome Extension Native messaging communication which will replace the NPPlugin. NPPlugin can be accessed from both /Library as well as ~/Library which does not require sudo permissions.
Why does the manifest file need to be at root /Library level ad not user ~/library level? If so how can we get this installed on a Mac without bothering the user with admin password which the user will obviously be less likely to share.
If anyone has a solution, the Native Executable is a C++ program that can use Mac API calls.
Your understanding is correct. The Chromium team is investigating user directories as an additional option. Ensuring continuing security is the primary concern. I'll update this answer when there's more to report. (Update 6/1/2014: see Rob W.'s comment to this answer)

Storing user's application preferences in Terminal Services Server session. Managed C++

Sorry if my question is silly, but I have no experience at all with terminal server and am having a problem on how to store user preferences for an app.
The application was originally designed to run in individual, independent, computers. The installer has the option to install for all users or the current user but it always stores some xml in a subdirectory of the commonapp folder of the computer. It does store it here to be able to write to it later on under Windows vista upward.
Now, the company is running terminal server and the users don't have an independent computer anymore. They log into a session of terminal server and the administrator decides what software they can use. As the app is now, it installs in the server and offers all the users the same preferences from the commonapp. If the preferences are changed for an user, they all will have the change...
Please, could someone illustrate me on this? Initially, I though that by choosing 'to all users' when installing, the terminal server system would use the roaming folder of the user to store the preferences but I was wrong...
I don't know what users are going to use the app and cannot install directly to their folder either.
Is this a terminal server settings thing or do I have to write some code in the app that checks if the user has the xml in its folder and copy it and use it if it doesn’t?
Do not store application preferences in its directory. Instead, store it in user's roaming directory - use Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) (since you tagged the post as managed). Then it can be installed once, but run multiple times by multiple users and each of them will get his set of settings.

Deploying a Firebreath plugin on a webpage without manual installation

Recently I have been experimenting with Firebreath and developed a plugin in order to showcase my c++ projects on my portfolio website. I would like to make it easy for users to look at the projects without downloading files if they are new on my website.
The only issue I have at this point is that when users visit my page, they will receive a message indicating the plugin is missing. I would like to have an option for the users to automatically install my plugin without having to manually download and run it.
The plugin is mainly targetted at Windows users, since the applications are as well. I intend to support Google Chrome, Firefox, Internet Explorer. Currently I am using a MSI installer to install the plugin.
I have found a question similar to this, but I still needed to save the MSI installer and run it.
My question is: What would be the best way to implement this?
There isn't any way to "automatically" do what you want to do. The closest that I have heard of would be to use a java applet that would download and install the plugin for them. This can be pretty reliable on Mac but far less reliable on windows (for a number of reasons, among which the fact that many windows users don't have java installed and that Chrome blocks java applets by default without intervention by the user).
Other options include:
Creating a CAB file installer (only works on IE)
Creating a XPI firefox extension that packages the plugin (requires restarting the browser, only works on firefox)
Creating a CRX chrome extension that packages the plugin (only works on Chrome)
Microsoft ClickOnce used to work pretty well for one click installs of MSI files from a web page, but recently I think it doesn't work on many (if any) browsers; haven't seen it used in awhile, anyway.
There is no "automatic" way to install plugins; that would be considered a severe security issue. This is probably the #1 reason that plugins are as uncommon as they are.
do what adobe does,
create a tiny activeX application downloader, sign the activeX from with cheap SSL
when a user, enters your site, he will automatically be downloading this tiny ActiveX, after installation complete, inside the tiny ActiveX, have some type of batch script to download the EXE from remote server and silently install it.
adobe does this, on every reboot in boot.ini or startups
very easy