LonkeroAdministrator
(KiX Master Guru)
2014-01-28 02:41 AM
kixforms .net actually working for anyone?

yet again I decided to try and install kixforms to no avail.

the msi does not work as it requires .net 1.1 to install.

.net 1.1 does not install on win7 64bit (rolls back when almost done installing).

regsvr32 on the dll itself fails as well.

so, not really sure how to use kixforms anymore at all.
this is not the first windows 7 I have tried.


AllenAdministrator
(KiX Supporter)
2014-01-28 04:12 AM
Re: kixforms .net actually working for anyone?

I never really knew the difference between the kixforms, but Glenn got me going on one of them in the following thread...

http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=206877#Post206877


LonkeroAdministrator
(KiX Master Guru)
2014-01-28 05:20 AM
Re: kixforms .net actually working for anyone?

that would be the classic.
I guess it is time to say good bye to the experiment that was .net


Glenn BarnasAdministrator
(KiX Supporter)
2014-01-28 01:14 PM
Re: kixforms .net actually working for anyone?

Yeah - by the time I decided to try KF.Net, it was too late. ;\) I'm sticking with KF Klassic - it just works...

Glenn


ShaneEP
(MM club member)
2014-01-28 04:00 PM
Re: kixforms .net actually working for anyone?

I have also only ever used the Classic.

LonkeroAdministrator
(KiX Master Guru)
2014-01-28 10:31 PM
Re: kixforms .net actually working for anyone?

well that's good to know, all the work that was put into the .net version :P

anyways, I do have to admit that the .net framework is almost unacceptable obstacle.


NTDOCAdministrator
(KiX Master)
2014-01-29 03:56 AM
Re: kixforms .net actually working for anyone?

http://answers.microsoft.com/en-us/windo...43-17660e25e43d

Arend_
(MM club member)
2014-01-29 10:58 AM
Re: kixforms .net actually working for anyone?

Ehm, Kixforms Classic works fine for me on Win7 x64.
Place kixforms.dll in %WinDir%\SysWow64 and register it using regsvr32.
Using version 2.47.4.0 btw.

KixForms.Net works fine for me as well, I've switched over to it ever since it came out.
Using version 3.2.14 of that, which works on .Net 2.0



Arend_
(MM club member)
2014-01-29 11:04 AM
Re: kixforms .net actually working for anyone?

Oh and according to the version history log from version 3.2.5 .Net 1.1 was dropped in favor of .Net 2.0

Version 3.2.5
- Added support for .NET 2.0 runtime.
- Dropped support for .NET 1.1 runtime.


LonkeroAdministrator
(KiX Master Guru)
2014-01-29 03:54 PM
Re: kixforms .net actually working for anyone?

well, the one on the downloads section won't install without .net 1.1

LonkeroAdministrator
(KiX Master Guru)
2014-01-29 03:56 PM
Re: kixforms .net actually working for anyone?

AND, the latest release is KiXforms.NET v3.01 Final

BradV
(Seasoned Scripter)
2014-01-29 04:02 PM
Re: kixforms .net actually working for anyone?

I think this is it in the forum Kixforms Development Build

Arend_
(MM club member)
2014-01-29 04:37 PM
Re: kixforms .net actually working for anyone?

 Originally Posted By: Lonkero
AND, the latest release is KiXforms.NET v3.01 Final

Nope, the latest version is Kixforms.Net 3.2.16
BradV is correct, development versions are on .Net 2.0
The Final is OLD! \:D


Mart
(KiX Supporter)
2014-01-29 04:46 PM
Re: kixforms .net actually working for anyone?

I'm using both flavors of kixforms on Win7, Win2K3 and Win2K8. The main reason for using .net is that I can use for example .png images with a transparent background. As far as I know classic only takes .bmp images which does not support transparent backgrounds.

As far as coding goes, I’m more familiar with kixforms.net. Ages ago when I was still a young, fresh, less experienced sysadmin I started with classic but accidentally switched to .net and never fully switched back. Most of my kixforms stuff is in .net but for some I still use classic.


LonkeroAdministrator
(KiX Master Guru)
2014-01-29 08:06 PM
Re: kixforms .net actually working for anyone?

 Originally Posted By: Arend_
 Originally Posted By: Lonkero
AND, the latest release is KiXforms.NET v3.01 Final

Nope, the latest version is Kixforms.Net 3.2.16
BradV is correct, development versions are on .Net 2.0
The Final is OLD! \:D


again, latest release.
I do remember adding stuff from .net 2.0 back in the day, but if the version was never released, it does not really matter.
I may need to look into that latest devel though.


It_took_my_meds
(Hey THIS is FUN)
2014-02-03 02:04 AM
Re: kixforms .net actually working for anyone?

Maybe we could beg Shawn to do an update or even better open up the source. There are a number of bugs in classic that I would dearly love to fix. I would happily try to fix them myself if I had access to the source. What Shawn gave us with KiXforms was just wonderful, but to then abruptly stop and leave us with no way to keep things working properly... not so much.

At one point I tried to offer Shawn money to get access to the source, but I didn't get a response :-(


LonkeroAdministrator
(KiX Master Guru)
2014-02-03 04:38 PM
Re: kixforms .net actually working for anyone?

I haven't got any responses either about kixforms. it's like he tries to forget that he was the developer who made it.

It_took_my_meds
(Hey THIS is FUN)
2014-02-04 02:15 AM
Re: kixforms .net actually working for anyone?

Does any mod or admin (maybe NTDOC?) have his current email address? Maybe they could explain the issues and ask him on behalf of us? If he wants to forget he made it then that is actually OK so long as he doesn't also leave us with no way to fix bugs and keep it up to date. I for one have over 20,000 lines of carefully crafted KiXforms code.

AllenAdministrator
(KiX Supporter)
2014-02-04 02:44 AM
Re: kixforms .net actually working for anyone?

I emailed him, and sent him a link to this thread. All we can do is wait and hope now.

NTDOCAdministrator
(KiX Master)
2014-02-04 02:45 AM
Re: kixforms .net actually working for anyone?

He sees and reads posts. Up to him though if/when he replies.

Unfortunately his IT life appears to have greatly changed and he does not appear to have as much time to visit these days.


It_took_my_meds
(Hey THIS is FUN)
2014-02-05 02:24 AM
Re: kixforms .net actually working for anyone?

I'm sorry to say, I saw that Shawn was online shortly after Allen emailed him. It would appear that he read this thread but didn't bother to respond.

Shawn,

WTF? You used to be my absolute hero! By just completely walking away without giving us a method to keep things working and up to date, you undo all the great legacy of your work. Imagine if you had invested many years of your time in developing a system, and the guy who wrote a core component to all of your work all of a sudden leaves and shows no indication of ever being contactable again. Well, you would be concerned wouldn't you? You'd be wondering how long it will be until the technology moves on to the point where key features are no longer supported, or even worse, it no longer works at all.

Then you'd be left with many years of your work down the drain :-(

Classic has a serious issue that results in the GUI not drawing correctly after extended use of forms that have a lot of detail in them. There are also scenarios with menus that trigger fatal exceptions. .NET is moving forward and it will only be a matter of time until the 2.0 framework is no longer supported.

I'm sure no one would expect you to do the same thing for the rest of your life. People need to move on and explore other things; just please don't leave us in the lurch.


ShaneEP
(MM club member)
2014-02-05 02:51 AM
Re: kixforms .net actually working for anyone?

Are you using the .Default property on your form objects by any chance? I've noticed in the past that it has caused form redrawing problems for me. Just a quick FYI.

It_took_my_meds
(Hey THIS is FUN)
2014-02-05 03:12 AM
Re: kixforms .net actually working for anyone?

Thanks for the tip Shane but that is not my issue. Something is causing the forms to not dispose properly. I've tried all sorts of things, including recursing through all the controls and disposing of them individually, but to no avail. I have a feeling that it is due to expandos, but I'm not sure.

LonkeroAdministrator
(KiX Master Guru)
2014-02-05 03:21 AM
Re: kixforms .net actually working for anyone?

oh... if anyone remembers bbchecker. it had memory leak issue and that was due to forms not disposing. can't remember was kixforms fixed or did I have to code around the issue.

NTDOCAdministrator
(KiX Master)
2014-02-05 03:26 AM
Re: kixforms .net actually working for anyone?

Long time ago but didn't Shawn come up with another connect method for you?

LonkeroAdministrator
(KiX Master Guru)
2014-02-05 03:34 PM
Re: kixforms .net actually working for anyone?

huh?

NTDOCAdministrator
(KiX Master)
2014-02-06 04:57 AM
Re: kixforms .net actually working for anyone?

I remember your BBS checking tool. At the time Shawn was very active and the two of you worked on it back and forth and I thought that the original connect method was update/replaced by something newer back then. But just guessing here as it was quite a while ago.

LonkeroAdministrator
(KiX Master Guru)
2014-02-06 02:53 PM
Re: kixforms .net actually working for anyone?

the connect method, yes, I added a server component written in PHP on korg so I would not need to read the bloated html or the non-functioning rss feeds the board provides.

it's been many many years ago so I do not remember was the form disposing leak fixed or was it something that had to do with the underlying api and couldn't be addressed.


ShawnAdministrator
(KiX Supporter)
2014-02-20 03:41 PM
Re: kixforms .net actually working for anyone?

I will see about getting Kixforms rebuilt under Visual Studio 2008. If there are any particular bugs that need fixing let me know.

Was thinking of simply hosting the new DLL from Korg ;\)


NTDOCAdministrator
(KiX Master)
2014-02-20 09:07 PM
Re: kixforms .net actually working for anyone?

Cool. Sounds good, thanks Shawn

It_took_my_meds
(Hey THIS is FUN)
2014-02-24 09:04 AM
Re: kixforms .net actually working for anyone?

Shawn, that's wonderful news! I've been off line for a bit as I'm on holidays (skiing in Japan - life's tough ;). I'll document the bugs I've found and their work-arounds that should help you in resolving them. I think if the community joins in with issues they have found and perhaps with (hopefully very simple) feature requests then a just little bit of your time you could add a lot of value. I'll post something in a few days, if that is OK with you. :-)

ShawnAdministrator
(KiX Supporter)
2014-02-25 12:06 AM
Re: kixforms .net actually working for anyone?

Thanks Richard. Enjoy your holidays. Looking forward to chatting when you get back.

It_took_my_meds
(Hey THIS is FUN)
2014-03-01 12:19 AM
Re: kixforms .net actually working for anyone?

Hi Shawn,

Sorry this took longer than expected to get back to you. I picked up a virus on my way back from Japan and have been pretty sick since. (Fun fact - your odds of picking up a virus increase by 190 times if you travel in a plane). Anyway, I digress.

Issue 1 - Forms and controls not disposing correctly.
This really is the most serious bug I know of in KiXforms. If you create and close enough forms with a lot of controls on them, eventually some graphical resource exceeds a threshold and the GUI stops drawing correctly. It can also affect other applications when it does this as well. Thankfully, I finally did recently find a work around for this issue. I tried a similar approach unsuccessfully before but with some tweaking I've created a dispose function that can be used on forms and controls to ensure they are properly killed.

 Code:
Function Dispose($Control)

	; KiXforms doesn't properly dispose of controls. Call this function on forms and controls to properly remove them and avoid GUI issues.
	If VarType($Control) = 9
		Dim $i
		For $i = $Control.Controls.Count - 1 to 0 Step -1
			Dispose($Control.Controls($i))
		Next
		$Control.Dispose
	EndIf
	
EndFunction


Issue 2 - Fatal exception when recreating menu item with a previously used shortcut
In one of my apps, I change what items are in a menu based on the context of the data being looked at. If you assign a keyboard shortcut to a menu item, then clear the menu and add another menu with the same keyboard shortcut (e.g Ctrl+T), then a fatal exception is triggered when the user uses the keyboard shortcut. Thankfully, the work around is simple.

 Code:
;clear menu
For $i = $Menu.MenuItems.Count - 1 to 0 Step -1
	$Menu.MenuItems($i).ShortCut = ""
	$Menu.MenuItems.Remove($i)
Next

On a side note, it would be good to insert menu items at specific positions

Issue 3 - Duplicate or sometimes unactioned events come through
I don't know if this is an issue with KiXforms or with the OS, but I often see form move and form resize events coming through when nothing has been done to the form. The work arounds are of course simple.

 Code:
If $Form.LastTop <> $Form.Top Or $Form.LastLeft <> $Form.Left
	; do stuff
	$Form.LastTop = $Form.Top
	$Form.LastLeft = $Form.Left
EndIf


 Code:
If $Form.LastWidth <> $Form.Width Or $Form.LastHeight <> $Form.Height
	; do stuff
	$Form.LastWidth = $Form.Width
	$Form.LastHeight = $Form.Height
EndIf


Unfortunately the OnMouseMove event on GridViews is unusable as a flood of events comes through even when the mouse isn't being moved. (Handy tip with gridviews: set EditOnEnter = 1 and you don't need to double click cells that are comboboxes to get them to show the list.)

Issue 4 - Items with over 64 characters in a gridview combobox cause a fatal exception
I don't know of a workaround here.

Humble feature requests
  • It would be good to get OnMouseMove events for listview and gridview headers to enable easy reordering of columns
  • It would be good to get OnMove events for forms when they are being moved rather than at the completion of the move - I suspect this would be difficult to do however
  • It would be good to set the colours for gridview and listview column headers as well as scrollbars
  • It would be good to add support for Windows 7 features such a jumplists
  • It would be really good to natively display HTML
  • It would be good for pictureboxs to support more formats than bitmap
  • It would be good to be able to get the maximum width of visible items in treeviews
  • It would be good to have a GetForm() method on all controls to make sure you make changes to the correct form. I currently extensively use the GetForm function below to address this but having it inbuilt would be handy for people.
 Code:
Function GetForm(Optional $Sender)

	$GetForm = IIf(VarType($Sender), $Sender, $System.Sender)
	If VarType($GetForm)
		If $GetForm.Class = "Menu" ; Menu class doesn't have a parent property
			$GetForm = $System.ActiveForm
		Else
			While $GetForm.Class <> "Form"
				$GetForm = $GetForm.Parent
			Loop
		EndIf
	Else
		$GetForm = $System.ActiveForm
	EndIf

EndFunction


I'm sorry if this list looks too demanding, I've just tried to be as thorough as possible. Anything you can do to assist would be very much appreciated.
Sincere thanks and respect,

Richard


It_took_my_meds
(Hey THIS is FUN)
2014-03-01 06:55 AM
Re: kixforms .net actually working for anyone?

BTW, if you are at all interested in what I've been working on (and off) with KiXforms all these years, I've attached the current version of the help file for the interface to my inventory system. It's not complete yet because I'm in the process of adding some pretty cool charting capability (IMHO).

I couldn't have done it without you :-)

Richard

Edit: I think there is something wrong the forum file attachment. I tried reattaching it but it gives a not found message when trying to download it. Maybe an admin can look at the issue? Anyway, here is another link IMS Console Help File


ShaneEP
(MM club member)
2014-03-01 04:50 PM
Re: kixforms .net actually working for anyone?

Thanks for sharing Richard. The file attachment doesn't seem to be working however. Not sure if it's just my system or not.

It_took_my_meds
(Hey THIS is FUN)
2014-03-01 09:47 PM
Re: kixforms .net actually working for anyone?

Yeah there is something wrong with the forum link that I can't remedy, I've left it there for the admins to diagnose. Please use this link IMS Console Help File.

LonkeroAdministrator
(KiX Master Guru)
2014-03-02 04:42 AM
Re: kixforms .net actually working for anyone?

thinking about the disposing issue... there is 2 different approaches that could have been taken when kixforms was made.
depending on which path was used, this issue is either by design (until the user calls dispose, kixforms holds a handle to the control) or by windows "feature" as released objects do not get automatically disposed.

from msdn: "Dispose will be called automatically if the form is shown using the Show method."

which does not really make sense. it can not dispose what is currently being used. or maybe it means that shown forms will be automatically disposed, when handles are freed.


It_took_my_meds
(Hey THIS is FUN)
2014-03-02 05:45 AM
Re: kixforms .net actually working for anyone?

If it is by design, then that's cool; people just need to be aware of it if they want to write clean KiXforms apps. That is why this discussion is good and at least there is a current working solution/work around that people can use. In any case, the dispose method on controls is not documented so I'm sure many people wouldn't know to do it. I feel there is definitely a bug here however as one would expect that calling .dispose() on a form should successfully dispose of the form, but it doesn't. Only by recursing through all the controls and calling .dispose() on every control from the branches back to the root, can the resources be successfully released.

It would however seem natural to me that a form or control should automatically be disposed of when there is no longer any programmatic reference to it.


LonkeroAdministrator
(KiX Master Guru)
2014-03-02 04:16 PM
Re: kixforms .net actually working for anyone?

I agree. and honestly is so long ago that I can't remember but that if I recall correctly, that is how it is designed to work and should work.

now...
if you create form with controls like this:
$form = kixforms.form
$button = $form.button

disposing $form might not be able to clean $button as it still has an active reference.
still thinking aloud here. can you see if you have these extra references and does it have effect if you first null them out or othewise remove the reference?


It_took_my_meds
(Hey THIS is FUN)
2014-03-02 10:41 PM
Re: kixforms .net actually working for anyone?

All my forms are created from within functions (with properly dimmed variables) and they have their own event loop at the bottom that exits when the form or any of its parents are closed. When the loop (and therefore the function exits) all variables relating to the form are cleaned up by the KiXtart interpreter.

On a side note, when you have multiple forms open, the events of all the forms are being processed in the query loop of the last opened form.


LonkeroAdministrator
(KiX Master Guru)
2014-03-03 05:00 AM
Re: kixforms .net actually working for anyone?

these are all kixforms classic issues. Shawn might jump in and give comment as otherwise we are just mainly guessing here.

on the .net version side, as far as I know there was only one issue in the tracker.

anyways, I am with Shawn in thinking hosting kixforms on korg is not a bad. funny how that came full circle since in the beginning there was a huge debate about it.


ShawnAdministrator
(KiX Supporter)
2014-03-06 01:57 PM
Re: kixforms .net actually working for anyone?

Richard. I found a bug with disposing the child controls of Panels ... do you use Panels much ?

It_took_my_meds
(Hey THIS is FUN)
2014-03-07 12:37 AM
Re: kixforms .net actually working for anyone?

Yes I most certainly do! In fact I use them extensively to create resizable 3D effects like as seen in the script I posted here Field Chooser.

Well done Shawn!


ShawnAdministrator
(KiX Supporter)
2014-03-07 02:42 PM
Re: kixforms .net actually working for anyone?

Richard. Sent you a PM.