Jump to content

Recommended Posts

Posted
Yes, I would prefer the backups to save to their user area so that everything is in their own account and I don't have to worry about any shared data issues.

 

Your wish is my command :-)

 

Version 1.9.3 is attached and you can now specify a "DefaultBackupPath" in the config file.

 

ExamWritePad193.zip

  • Thanks 2
Posted

Minor issue I've found @ass17

In posts 4 and 41 you said it needs .Net Framework 4 to run..... Just tried it on one of our XP laptops (since most of our exam laptops are that old!) and it just gives us an error that it's not a valid win32 application.

 

Sure it doesn't need .Net 4.5 to run (which is fine for Windows 7 upwards where you can install it on the client)

Posted (edited)

Just tried this on my W10 machine and clicking Previous Versions on a mainly blank document causes a crash:

 

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
  at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
  at System.IO.Path.GetFullPathInternal(String path)
  at Microsoft.VisualBasic.FileIO.FileSystem.NormalizePath(String Path)
  at Microsoft.VisualBasic.FileIO.FileSystem.FindFilesOrDirectories(FileOrDirectory FileOrDirectory, String directory, SearchOption searchType, String[] wildcards, Collection`1 Results)
  at Microsoft.VisualBasic.FileIO.FileSystem.FindFilesOrDirectories(FileOrDirectory FileOrDirectory, String directory, SearchOption searchType, String[] wildcards)
  at ExamWritePad.Form2.PreviousVersionsToolStripMenuItem_Click(Object sender, EventArgs e)
  at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
  at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
  at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
  at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
  at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
  at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
  at System.Windows.Forms.Control.WndProc(Message& m)
  at System.Windows.Forms.ToolStrip.WndProc(Message& m)
  at System.Windows.Forms.MenuStrip.WndProc(Message& m)
  at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ExamWritePad
   Assembly Version: 1.9.3.0
   Win32 Version: 1.9.3.0
   CodeBase: file:///C:/Users/GShaw/Desktop/ExamWritePad.exe
----------------------------------------
Microsoft.VisualBasic
   Assembly Version: 10.0.0.0
   Win32 Version: 14.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1075.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Runtime.Remoting
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Configuration
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1064.2 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Deployment
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Deployment/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:


   


When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

 

Edit: just noticed the DefaultBackupPath string is blank by default, is that what causes the crash until a value is provided?

Edited by gshaw
Posted
Minor issue I've found @ass17

In posts 4 and 41 you said it needs .Net Framework 4 to run..... Just tried it on one of our XP laptops (since most of our exam laptops are that old!) and it just gives us an error that it's not a valid win32 application.

 

Sure it doesn't need .Net 4.5 to run (which is fine for Windows 7 upwards where you can install it on the client)

 

Dot net 4.5 framework I'm afraid, so no XP support sorry. There is a feature in the code which is only in 4.5

Posted
Just tried this on my W10 machine and clicking Previous Versions on a mainly blank document causes a crash:

 

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
  at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
  at System.IO.Path.GetFullPathInternal(String path)
  at Microsoft.VisualBasic.FileIO.FileSystem.NormalizePath(String Path)
  at Microsoft.VisualBasic.FileIO.FileSystem.FindFilesOrDirectories(FileOrDirectory FileOrDirectory, String directory, SearchOption searchType, String[] wildcards, Collection`1 Results)
  at Microsoft.VisualBasic.FileIO.FileSystem.FindFilesOrDirectories(FileOrDirectory FileOrDirectory, String directory, SearchOption searchType, String[] wildcards)
  at ExamWritePad.Form2.PreviousVersionsToolStripMenuItem_Click(Object sender, EventArgs e)
  at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
  at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
  at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
  at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
  at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
  at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
  at System.Windows.Forms.Control.WndProc(Message& m)
  at System.Windows.Forms.ToolStrip.WndProc(Message& m)
  at System.Windows.Forms.MenuStrip.WndProc(Message& m)
  at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ExamWritePad
   Assembly Version: 1.9.3.0
   Win32 Version: 1.9.3.0
   CodeBase: file:///C:/Users/GShaw/Desktop/ExamWritePad.exe
----------------------------------------
Microsoft.VisualBasic
   Assembly Version: 10.0.0.0
   Win32 Version: 14.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1075.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Runtime.Remoting
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Configuration
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1038.0 built by: NETFXREL2
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1064.2 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Deployment
   Assembly Version: 4.0.0.0
   Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE
   CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Deployment/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:


   


When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

 

Edit: just noticed the DefaultBackupPath string is blank by default, is that what causes the crash until a value is provided?

 

If the backup path is blank then the app will set it to the program data path. I will double check tomorrow just to make sure it is ok.

Posted

Cheers @ass17

 

We went through and updated a handful of our exam laptops yesterday to Windows 7 as the Exams Officer was very impressed with the Exam Wordpad when we showed it to her.

 

I'll give the new version a try on one of the XP units but didn't actually expect you to update it to work with .Net 4. Just thought I'd clarification as to the base level it needed :)

Posted

Hi @ass17

 

Just been playing with this.

 

When you go to print, and change the printer to something other than default, it still prints the work to the users' default printer.

 

Peter

Posted

Also, when you view 'previous versions', if the backups are in the same folder as the actual save file, you can reload the save file's content - complete with XML - into the textbox of the open file.

 

I realise you probably wouldn't normally have save and backup files in the same folder, but for testing I did, and managed to confuse the software. :)

 

Might be worth a different file extension for backups versus live files, particularly as some are XML and some are only text.

 

What is 'undo' supposed to do? It currently wipes my entire document, then (per redo functionality discussed above) puts it back again. Is it more a 'revert to last backup/saved version'?

 

Peter

Posted
Also, when you view 'previous versions', if the backups are in the same folder as the actual save file, you can reload the save file's content - complete with XML - into the textbox of the open file.

 

I realise you probably wouldn't normally have save and backup files in the same folder, but for testing I did, and managed to confuse the software. :)

 

Might be worth a different file extension for backups versus live files, particularly as some are XML and some are only text.

 

What is 'undo' supposed to do? It currently wipes my entire document, then (per redo functionality discussed above) puts it back again. Is it more a 'revert to last backup/saved version'?

 

Peter

 

I will look into different file extensions and quite agree that they should be separate.

 

The undo function is what ever the .net 4 textbox.undo does. May need to take a look further, into this.

Posted

@%1;

 

I have now fixed the printer selection issue.

 

Also I have changed the file extension from "ExamText" to "ExamTextBackup" for the purpose of Previous version backups.

 

Version 1.9.5 is now available to play with... have fun!!

 

 

ExamWordPad195.zip

  • Thanks 1
Posted

Looking at the Undo bit you referred to before. This is what Microsoft say about textbox.undo

 

"This method will undo the last Clipboard or text change operation performed in the text box control if the CanUndo property returns true."

Posted
Just putting this little one out there, would anyone see the benefit of disabling keys like ALT+F4, ALT + TAB, Windows keys etc? Just to stop people closing the app unintentionally or switching away from the app, what do you think?
Posted

I think that would be good, but they'll always be able to access CTRL+ALT+DEL

 

 

For example, the Pearsons Online Exam software does this too - stops you from being able to quit, then asks for a password.

I like the idea, so if you can pull it off - do it!:D

Posted

Hi,

This software looks great and works well when logged in as me (administrator), however when I try to run the software with a staff/student or locked down exam account I get 'ExamWritePad has stopped working'. the Application log states:

 

Faulting application name: ExamWritePad.exe, version: 1.9.5.0, time stamp: 0x572cb3aa

Faulting module name: KERNELBASE.dll, version: 6.1.7601.19135, time stamp: 0x56a1c9ac

Exception code: 0xe0434352

Fault offset: 0x000000000000965d

Faulting process id: 0x141c

Faulting application start time: 0x01d1aaac34cdf31a

Faulting application path: \\PATHTOUSERSDOCUMENTS\ExamWritePad.exe

Faulting module path: C:\WINDOWS\system32\KERNELBASE.dll

Report Id: 73399cce-169f-11e6-b69a-f8bc12889fea

 

AND:

 

Application: ExamWritePad.exe

Framework Version: v4.0.30319

Description: The process was terminated due to an unhandled exception.

Exception Info: System.Net.Sockets.SocketException

Stack:

at System.Net.Sockets.Socket..ctor(System.Net.Sockets.AddressFamily, System.Net.Sockets.SocketType, System.Net.Sockets.ProtocolType)

at System.Net.Sockets.TcpListener..ctor(System.Net.IPAddress, Int32)

at System.Runtime.Remoting.Channels.Tcp.TcpServerChannel.SetupChannel()

at System.Runtime.Remoting.Channels.Tcp.TcpServerChannel..ctor(System.Collections.IDictionary, System.Runtime.Remoting.Channels.IServerChannelSinkProvider, System.Runtime.Remoting.Channels.IAuthorizeRemotingConnection)

at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.RegisterChannel(ChannelType, Boolean)

at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(System.String[])

at ExamWritePad.My.MyApplication.Main(System.String[])

 

Any ideas what might cause this?

 

I also seem to have a problem in that every time I press save, it gives me a dialog box asking to confirm where I want to save the file, as if I am pressing 'save as' every time..

 

Thanks!!

 

Jake

Posted
I also seem to have a problem in that every time I press save, it gives me a dialog box asking to confirm where I want to save the file, as if I am pressing 'save as' every time..

 

Thanks!!

 

Jake

 

Ah, I had this at the end of my testing, but I thought it was because I'd messed up the files by opening a live file as a backup (historical version), so the text area contained XML that it shouldn't have when I saved it.

Posted
I think that would be good, but they'll always be able to access CTRL+ALT+DEL

 

CTRL+ALT+DEL Can be disabled as well. Another Idea might be to force the always on top focus.

Posted

Hi,

So the loading issue was caused by the application being run from a mapped drive. Seems to be OK with that as administrator but not as users. Running from the C:/ drive or USB works fine.

 

The 'Save', 'Save As' issue is still prevalent, haven't managed to get to the bottom of that yet. Any info most welcome!

Posted
Is there any way to set a default save location? Or restrict it so they can only save to a particular place?
Posted

When I run it live or in debug it is from my H: drive which is a mapped home folder. Never crashes. I'm pretty sure that .net framework 1 and 2 apps had to have security setup on each client to allow running from a network location but .net 3/4 I'm not sure how it now works so will check it out.

 

In terms of the save issue I will check it out, not sure what has happened there but will release a new version tomorrow with a fix [emoji106]🏻[emoji106]🏻[emoji1][emoji1]

Posted

I have now sorted the issues with general saving and saving from restored backup

 

Also its too much effort to disable CTRL+ALT+DELETE, so I have forced ExamWordPad to stay on top most above all programs, If you wish to disable Task Manager then please do so via GPO.

 

version 1.9.6 is attached below

 

ExamWritePad196.zip

  • Thanks 2
Posted (edited)

My friend, you are a legend.

 

I never post on forums and things (as you will most likely tell from my info) but you sir deserve my gratitude.

This is the first year we're doing exams at my place and picking apart Office is more trouble than it's worth so you've saved me a lot of messing about.

 

FYI: If I change the font colour value in the config file it doesn't appear to apply. I don't need to do it but I just like poking around with the values in configs and things!

The character map also appears behind the app now it is forced above all other windows and the print dialog is stuck behind too.

Edited by krudler

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...