StrataFrame Forum

Getting an error on login

http://forum.strataframe.net/Topic4124.aspx

By Paul Chase - 11/3/2006

I just "upgraded" my app to use role based security.I think I did everything the Documentation asked however I am getting the following error and need some help on where I might have gone wrong

Private Shared Sub ShowLoginAndInitMainForm(ByVal e As ShowLoginAndInitFormEventArgs)

'-- Set the login form type to the appropriate form type (optional)

Login.LoginFormType = GetType(frmLogin)

'-- Show the login form and set the return value back to e.ShowMainForm

' The true value passed to the method tells the method to allow the

' end-user to cancel the login form, which will return False from the

' method.

error here-->e.ShowMainForm = Login.ShowLoginAndAuthUser(True)

End Sub

System.Reflection.TargetInvocationException was unhandled by user code
  Message="Exception has been thrown by the target of an invocation."
  Source="mscorlib"
  StackTrace:
       at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
       at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
       at System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
       at System.Activator.CreateInstance(Type type, Boolean nonPublic)
       at MicroFour.StrataFrame.Security.Login.ShowLoginAndAuthUser(Boolean AllowCancel)
       at Payroll.AppMain.ShowLoginAndInitMainForm(ShowLoginAndInitFormEventArgs e) in C:\Action Labor Payroll 2006\Payroll\Payroll\AppMain.vb:line 118
       at MicroFour.StrataFrame.Application.StrataFrameApplication.Raise_ShowLoginAndInitializeForm(ShowLoginAndInitFormEventArgs e)
       at MicroFour.StrataFrame.Application.StrataFrameApplication.RunApplication()

By Trent L. Taylor - 11/3/2006

Well, the problem is coming from Activator.CreateInstance which means that it can either not find the fromLogin or it is not defined off of a SF Login Form template.

If you remove the line of code specifying the custom logon form, does the default logon form come up?

By Paul Chase - 11/3/2006

Yep that works fine.

I used the login template to create the login form. I deleted and re added the custom form and still recieve the same error.

By Trent L. Taylor - 11/3/2006

I did this just yesterday...so I know it will work Smile  The error that is being thrown is because Activator.CreateInstance cannot find the specified type...or it is throwing an error when it launches.

Is the custom login form in the same assembly as the Appmain.vb file?  It doesn't have to be, but I am just curious.

By Paul Chase - 11/3/2006

Trent,

They are both in the same assembly. I used the Template to create the form and have not changed any thing in the template, This application has been in devlopment for awhile so I had to update the appmain following the directions in the Role based help. Is it possible that there is something that the login template form references that my app is missing?

P

By Trent L. Taylor - 11/3/2006

Oh sure...it is definitely possible Hehe .  One thing you might try is creating a new project off of the StrataFrame Application w/ Security and then look and compare to see if you are missing something.  If this doesn't work for you let me know and we can dig a little deeper.
By Paul Chase - 11/3/2006

this is from the inner exception

{"Could not find any resources appropriate for the specified culture or the neutral culture.  Make sure "Payroll.FrmLogin.resources" was correctly embedded or linked into assembly "Payroll" at compile time, or that all the satellite assemblies required are loadable and fully signed."}

By Paul Chase - 11/3/2006

Trent,

I am getting the same problem on a vanilla application with security project.Here is the sample project.

By Paul Chase - 11/6/2006

Any ideas on this?
By Trent L. Taylor - 11/7/2006

Well...it turns out that it is a very simple and easy to fix problem.  I will make sure that the template does not have this in it.  Open the LoginForm1.Designer.vb file and go to line 112.  There is a line of code attempting to set the header image on the gradient form header and pull it from a resource file that does not exist.  If you remove this line, the error will go away.  Another way to make it disappear it to just set the header image on the gradient form header.
By Paul Chase - 11/7/2006

Thanks Trent
By Trent L. Taylor - 11/7/2006

Sure...sorry for the delayed response...Blush
By Greg McGuffey - 11/7/2006

BTW, it appears my code to swap out roles is working BigGrin



So, it looks like for now, I have jumped that hurdle. Thanks again for the help.
By Trent L. Taylor - 11/8/2006

Great!  Glad to hear it! Smile