Upgrade Infopath form without saving - windows-7

We are using Infopath forms on our web application (not Sharepoint). We have run into a problem with Infopath 2010 on Windows 7 machines, when upgrading the form.
If we publish a new version of the form to our server, and then open the form in Infopath (only 2010 on windows 7), a yellow information bar appears telling us that there is a newer version of the form available, and asking whether we want to "Save and Update". The problem is, this calls the Save function of the form, but the form can not be saved if there are validation errors. If the user clicks this "Save and Update" button as soon as Infopath opens, Infopath still tries to save the empty form. This results in lots of error messages appearing, which does not provide a very good end-user experience.
However, after all the errors have gone, and the form is reopened, it now has the new version.
I have also noticed, that for some users this error does not happen, and Infopath seems to just silently update the form before displaying anything. Testing with a number of Local accounts (including the machine administrator) on a test machine produced the error, but when I logged on with my own domain account (with admin privileges) I did not get the error. This makes me suspect that the problem is due to some security setting in Windows 7.
I have tried catching the OnVersionUpgrade event that Infopath provides, but this event does not fire till after the form has attempted to save, so it does not help me in this case. I have also tried to set Upgrade automatically when a new version is available under Form Options -> Versioning, but this does not seem to make any difference to the behaviour of the form.
Is there any way that I can force Infopath to upgrade the form automatically when there is a new one available, without it first trying to save the form?

I had a similar issue and it was solved by clearing the local infopath cache. Likely happening to your users that have opened that same form before. Might be a way to do that programatically on form load?

Related

Windows Certificate Authority request form submit failure

I have a Windows 2012 R2 Standalone Root CA setup to issue authentication certificates when requested via the certrqma.asp page. This page has been modified to only show a small number of fields required but no configuration has been changed over the default and has worked fine in the past, however, recently (Not exactly sure when) the page simply won't submit the request.
I can see errors via the console in both IE and Chrome but the user feedback on form submission is to display the message:
This page has not finished loading yet. Please wait a few seconds and try again.
IE Console: SCRIPT5009: 'GetCSPList' is undefined - certrqma.asp (1523,3)
Chrome Console: Uncaught ReferenceError: loadXEnroll is not defined at postLoad (certrqm.asp:997) & at onload (certrqma.asp:9)
My ASP coding is non-existent and am feeling my way along but at least found the above so hoping it's useful detail. Any ideas?
So it turns out, this is a direct result of Microsoft disabling, by default, the execution of VBScript in IE11 onwards. This was changed in the August 2019 Windows Security Update and has been planned since early 2017: An update on disabling VBScript in Internet Explorer 11
VBScript can easily be re-enabled in IE using one of the methods in Option to disable VBScript execution in Internet Explorer for Internet Zone and Restricted Sites Zone but compromising security is not something we should have to ask clients to do in order to use this as intended.
I thought the Windows 2019 Server version of this form would be coded differently to address this seeing as disabling it has been in the pipeline for so long but is not the case as 2019 Server Certificate Services Web Enrollment still requires VBScript in order to use this form.

Custom properties are not being saved immediately to Exchange Server in Outlook desktop 2016

My Outlook web add-in saves emails to an external application.Upon save, it will also write some custom information to exchange server using Office.js's customProps.saveAsync();. So next time the user open the same email, the add-in will look up the properties and if it is not null will remind the user the email has been saved.
Work like a charm in web browser(Office 365).
However in Windows Outlook desktop, the function performs strangely. If I save the email and then immediately move the email to another folder. The customProps.saveAsync(); will fail(nothing saved to exchange server). However, if I re-launch the add-in on the email before moving out to another folder, the custom info will be saved successfully.
Seems to me on Outlook desktop the custom properties will not be written to the exchange server immediately, instead, it will wait until it is being triggered(re-launch add-in etc I do not know the exact mechanism). However, if the email being moved to another folder right after being saved in an add-in, the pending function will be lost.
I found this describing seemingly similar behavior. So I then turned off the "cache" mode in outlook but the problem persisted.
I also tried using EWS's API to perform the "save custom properties", but the problem still persisted.
Am I missing somethinghere or it is Outlook desktop's bug?
You are not missing something - this is definitely a bug in Outlook Desktop. Thank you for reporting the issue. We are investigating and will work on a fix as quickly as we can.
As a workaround in the interim, you can switch messages within the same folder in order to trigger a save. The workaround you found of re-opening an Add-in may also work.

Webmatrix crashes when site is opened or created

When I open WebMatrix it works without problem and shows the start page.
When I click 'My sites' and choose my site or choose My site by click 'Open'=> My site or create new site (and choose the site type: Empty, App Gallery or Template Gallery) WebMatrix crashes. Note: It crashes when it needs to show the site pages.
I tried to re-install WebMatrix but that didn't help. I also tried to change the Workspace(by clicking 'Options' on the start page).
When it crashes, I get the message 'Windows is looking for a solution to the problem.' (My computer isn't in English so that might not exactly be the words) and then I am asked if I want to close/debug the program. I click 'Debug' and choose Visual Studio. I don't know how to debug a program, but I tried and it says to me that:
System.NullReferenceException was unhandled
Message: An unhandled exception of type 'System.NullReferenceException' occurred in Microsoft.WebMatrix.Core.dll
Additional information: Object reference not set to an instance of an object [-translated].
I have searched on the internet and here and I didn't find any solution to my problem.
Actual Answer
This bug is in the market for a time now. I have seen similar issue on another forum too, where the user was facing the same issue and same thing he tried but all in vain.
I think you need to wait for the next Update for your System, or try removing each and every component that WebMatrix installed, that means all the .NET Frameworks (4th version), Sql Dependencies Sql Server Ce, and all other files that were shipped along with WebMatrix to your computer. Remove them, and start the installing process once again freshly.
If nothing does the job, please uninstall WebMatrix 3 and install WebMatrix 2: Click here for link. I know it is awkward to go back a version, but you'll have to. Secondly you can mention this bug on their support/suggestion page. They would fix it.
http://webmatrix.uservoice.com/
I hope that would help you. And you'd be back in developing the apps :-)
Just for information
Secondly, do you understand what is meant by debug? Debugging is a method or process to remove the bugs from a software or an application etc. When you chose Visual Studio, it provided you or not provided you with the WebMatrix source code, I am not sure I never tried it. And you tried out debugging it. The exception is gave you, was a message saying that the parameter you're passing onto the next stage is a null. Which means it doesn't even exist and thus the value or the method cannot be executed and it breaks.

Execute callback on Firefox extension installation

I want to provide my users with a link to install a Firefox extension using the InstallTrigger.install. This requires a Javascript object with url as parameter and a optional callback which is executed after the browser handles the action.
According to the MDN documentation this callback is only executed when the user has whitelisted my website. That would be not the case in 99% of the time.
Would there be another way to execute a callback? The main focus is to provide the user a sensible error message when the installation fails or is cancelled.
Firefox simply cannot know whether the installation is canceled. Typically, when you try to install from a third-party site Firefox will show you the message: "Firefox prevented this site from asking you to install software on your computer." Now the user could click "Allow", he could dismiss the message, but he doesn't have to do either. He could also click Alt-Left to go to the previous page - the notification will stay and the installation can still be started but your web page (and any callbacks) will be gone. And even if the user simply dismisses the message: the extension installation icon stays in the URL bar and the notification can be brought back at any time.
So whatever your website needs to do: just do it, don't wait for the user to make a decision. If you want to explain the consequences of denying the installation - explain them. If you want to present alternative ways to install the extension - present them. But don't expect that you will be given a second chance if the user doesn't want to install your extension.

VB6 IE frame / WebBrowser causing NT.dll error

We have a legacy VB6 application which has worked just fine on Windows XP Professional SP 3 until just recently when we added an IE frame control so that we could display static local HTML files on a form. And, it works fine until I go to close the application. And, then it reports the following error message (consistently):
Faulting module ntdll.dll, version 5.1.2600.5755, stamp 49901d48
Here's the reference in the Visual Basic project file:
Object={EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}#1.1#0; ieframe.dll
And we use it by performing the following actions:
Development machine is running Win7 + Vb6 IDE.
Add a component reference to the "Microsoft Internet Controls" located at C:\Windows\SysWow64\ieframe.dll
Place a control on the form at design time.
Show that form modally by calling Form.Show vbModal The error happens when I use the default form instance frmMyForm.Show vbModal as well as when I use a local instance Dim MyForm as New frmMyFormMyForm.Show vbModal
Call WebBrowser.Navigate "staticPage.html"
When the user presses a button, the button click event returns the user choice and the form is disposed of.
Exit the application -- Here's where I get the error.
I've been looking all over the web, and haven't been able to find a whole lot of people still trying to use VB6 in this way. So, I'm wondering if someone might be able to help me on stackoverflow. Any help is much appreciated!
[Update] And, the plot thickens. I made a sample application with just that web component in order to make sure that it was causing the error. But, I didn’t experience the error when it closed like I was when exiting our existing/legacy vb6 application. I'll do a bit more investigating.
A follow up to this in case any runs into the same issue (the original poster and I were coworkers at the time)...
The application was using the VBCorLib library, and some of its string manipulation classes utilized direct memory access incorrectly. Read more at this VBCorLib forum post.
It turns out that the issue was that I was trying to delete the temporary file that the browser had loaded. It works now that I've moved that delete file code to the form unload event.

Resources