Welcome Guest.   Make a donation to an author on the site April 20, 2014, 01:03:41 AM  *

Please login or register.
Or did you miss your validation email?


Login with username and password (forgot your password?)
Why not become a lifetime supporting member of the site with a one-time donation of any amount? Your donation entitles you to a ton of additional benefits, including access to exclusive discounts and downloads, the ability to enter monthly free software drawings, and a single non-expiring license key for all of our programs.


You must sign up here before you can post and access some areas of the site. Registration is totally free and confidential.
 
Your Support Funds this Site: View the Supporter Yearbook.
   
   Forum Home   Thread Marks Chat! Downloads Search Login Register  
Pages: Prev 1 2 [3] 4 5 6 Next   Go Down
  Reply  |  New Topic  |  Print  
Author Topic: Windows 7's Taskbar....Err.....Circle Dock for the DC Programming Contest  (Read 65805 times)
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #50 on: August 18, 2008, 02:00:24 AM »

I will create a source-forge account to host the code since the whole solution is now around 40 megs with the icons I use for testing. I can't host this on wikidot because of file size limitations. I'll post a message when I get the source-forge account set up.
40 megs? That sounds like a lot! You should probably strip it down to only the source files etc. that's necessary to build, and perhaps a minimal set of images - keep the full image/icon set only in the binary release.

Oh, and make sure to clean out any temporary or auto-generated files, stuff like .pdb and .pch (dunno if those are used in dotNET projects?) can grow quite large.

Now I'm curious if a 64-bit Vista user will have the same problem...... Hmm. I'll have to wait and see.
Both versions crash on Vista64 as well.
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #51 on: August 18, 2008, 02:24:04 AM »

Oh, and make sure to clean out any temporary or auto-generated files, stuff like .pdb and .pch (dunno if those are used in dotNET projects?) can grow quite large.

Now I'm curious if a 64-bit Vista user will have the same problem...... Hmm. I'll have to wait and see.
Both versions crash on Vista64 as well.

I will make the source files as small as I can. We'll see what happens.

As for some good news, I think I figured out what was causing the appearance of questions mark images for Dormouse and the crashing for the crashing for the 64-bit users. I'm uploading Alpha 5 right now. I have tested it on Windows XP Professional SP2 with .Net 2.0 and it works fine now with none of the question marks showing up.

I'll post back when the upload is finished.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #52 on: August 18, 2008, 02:31:43 AM »

Okay Everyone,
I think I might have figured out what was cause the crashes on 64-bit machines and the question marks for Dormouse. When Circle Dock references a file within it's own folder, it uses ".\" to signify that the file is within it's own folder. For example, if I wanted to reference an icon in the Circle Dock folder it would be ".\System\Icons\Some Icon.png". However, some systems cannot handle the ".\" shorthand and I must specify the full path in the arguments to create the images in the dock.

I tested this out on a Windows XP Professional SP2 machine with .Net 2.0 and I was able to replicat what Dormouse was getting and the error message that popped up looks suspiciously similar to the ones from the 64-bit machines.

Try Alpha 5 out and it should be better: http://circledock.wikidot...CircleDock0.9.2Alpha5.zip


Eric Wong
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #53 on: August 18, 2008, 02:37:55 AM »

It's a good idea to always use fully-qualified paths when opening files - there's several things that can cause the current working directory to change, and then opening with relative paths break smiley

PS: The file does not exist. for the new download URL.
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #54 on: August 18, 2008, 03:23:37 AM »

PS: The file does not exist. for the new download URL.

Fixed. It's working now.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #55 on: August 18, 2008, 03:31:54 AM »

PS: The file does not exist. for the new download URL.

Fixed. It's working now.
I'm still getting the "File does not exist" error when trying to download...
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #56 on: August 18, 2008, 03:40:58 AM »

The link works for me. Maybe the servers are updating their caches.

I've uploaded Circle Dock 0.9.2 Alpha 5 to this message so you can try downloading it here:

* CircleDock0.9.2AlphaPreview5.zip1
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #57 on: August 18, 2008, 03:53:57 AM »

Weird - I still can't grab from the wikidot URL, even tried with wget to make sure I wasn't getting a cached copy of the error page. Anyway, I got the attached version from your post, and it still crashes.

But I'm sure we'll eventually be able to sort things out smiley
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #58 on: August 18, 2008, 04:02:53 AM »

Weird - I still can't grab from the wikidot URL, even tried with wget to make sure I wasn't getting a cached copy of the error page. Anyway, I got the attached version from your post, and it still crashes.

But I'm sure we'll eventually be able to sort things out smiley

Darn it. Well at least I know it works for 32-bit from some people that are using it now. I just need access to a 64-bit system somehow. Guess I better get cracking at that source-forge thing.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #59 on: August 18, 2008, 05:31:09 AM »

1

Okay, something for the 64-bit users out there. Have you tried running it in a 32-bit compatibility mode by changing the settings in the Properties pop-up of the exe file?

I have set up a Source Forge account but it's going to need a few days to get approval. I'm trying to decode the 64-bit error messages I've seen here to see if I can understand the problem better.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #60 on: August 18, 2008, 05:32:34 AM »

Nevermind about that compatiblity setting in the Properties panel. Someone has tried it and it didn't work.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #61 on: August 18, 2008, 05:41:15 AM »

Hm, I don't know if there's such a thing as 32-bit compatibility mode... at least not with the right-click property stuff. And I don't know if there's a way to tell the dotNET jitter to jit for 32bit instead of 64bit.

All I can see is that the crash happens in the CircleDock.MainForm constructor, near the end of the method... debugging dotNET code without source is a bit tedious smiley
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #62 on: August 18, 2008, 05:43:28 AM »

Hm, I don't know if there's such a thing as 32-bit compatibility mode... at least not with the right-click property stuff. And I don't know if there's a way to tell the dotNET jitter to jit for 32bit instead of 64bit.

All I can see is that the crash happens in the CircleDock.MainForm constructor, near the end of the method... debugging dotNET code without source is a bit tedious smiley

Can you program in C# and do you have Microsoft Visual C#? If you do, I can try setting up a special space somewhere for you to download it.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
mouser
First Author
Administrator
*****
Posts: 32,674



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #63 on: August 18, 2008, 05:44:10 AM »

Quote
I will create a source-forge account to host the code since the whole solution is now around 40 megs with the icons I use for testing. I can't host this on wikidot because of file size limitations. I'll post a message when I get the source-forge account set up.

Sourceforge is nice for that -- they are very generous with their space.

But DC would also be delighted to give you as much space as you want to host your stuff, just message me.
Logged
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #64 on: August 18, 2008, 05:47:27 AM »

Can you program in C# and do you have Microsoft Visual C#? If you do, I can try setting up a special space somewhere for you to download it.
My experience with C# is limited, but the language syntax is similar enough to C++ that I don't have trouble reading it - and the dotNET framework seems to be reasonably easy to follow.

So yeah, I could probably help with debugging smiley
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #65 on: August 18, 2008, 05:50:57 AM »

Talking to mouser right now about getting some hosting space... Hopefully we can resolve the 64-bit issue within a couple of days. When you see my code, please excuse some of the messiness and uncommented code. I was working on it up to when I found out Lifehacker was covering it and people started e-mailing me. But, I promise to eventually get the code commented because I think this is very important.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #66 on: August 18, 2008, 05:57:01 AM »

Hey f0dder, you should download Microsoft Visual C# Express at http://www.microsoft.com/express/vcsharp/ so you are ready when we get the files up.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #67 on: August 18, 2008, 03:25:15 PM »

Alright, the source code for Circle Dock 0.9.2 Alpha 6 is up at http://ericw.dcmembers.co....9.2Alpha6_SourceCode.zip. This is a new link and isn't on the Circle Dock website yet. It is a 21 meg download.

In this version, I've added unhandled exception handlers that will provide detailed error messages. Maybe that will help with debugging.

Just download the file, unzip and open the CircleDock.sln file with C# and the whole project will be loaded. To debug it, press F5 in Visual C# Express or click on the green arrow in the toolbar menu.

Hopefully f0dder or someone with a 64-bit machine can get rid of the 64-bit incompatibility.


Eric Wong
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #68 on: August 18, 2008, 06:31:25 PM »

OK, I've taken a cursory look at the source. The crash happens on line 151 in MainForm.cs, upon a call to StartHook(this.Handle); - my guess is that this hook is in a 32bit native DLL, which obviously can't be loaded when dotNET jits CircleDock for a 64bit target CPU. By creating a build configuration for "x86" (instead of "any CPU") and copying some files around manually, I was able to get CircleDock running (although there's some other problems, but we'll focus on those later).

Now, it's showing that I'm not exactly super familiar with dotNET embarassed - I have trouble seeing how the various DLL files are generated; does Orbit.Hook.dll , for instance, have corresponding source files in the project? I only really see it referenced in the source via a DllImport statement, so I'm wondering smiley
Logged

- carpe noctem
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #69 on: August 18, 2008, 07:03:00 PM »

OK, I've taken a cursory look at the source. The crash happens on line 151 in MainForm.cs, upon a call to StartHook(this.Handle); - my guess is that this hook is in a 32bit native DLL, which obviously can't be loaded when dotNET jits CircleDock for a 64bit target CPU. By creating a build configuration for "x86" (instead of "any CPU") and copying some files around manually, I was able to get CircleDock running (although there's some other problems, but we'll focus on those later).

Now, it's showing that I'm not exactly super familiar with dotNET embarassed - I have trouble seeing how the various DLL files are generated; does Orbit.Hook.dll , for instance, have corresponding source files in the project? I only really see it referenced in the source via a DllImport statement, so I'm wondering smiley

Yes, you appear to be right, StartHook(this.Handle); is a 32-bit DLL. It was a component I took from the Orbit Dock project (a circular dock that was abandoned a few years ago before completion). The Orbit Dock project files I have are quite unstable and I don't think it was meant for 64-bit OS's. This function resides in the Orbit.Hook.dll file as you have mentioned. It is basically used for hooking the middle mouse button to toggle the visiblity of the dock. It is written is C++, which doesn't really flow with the rest of the project because I think it was written by someone else than the author of Orbit Dock.

However, I have a solution, we can just remove Orbit.Dock.dll altogether and all the hooks currently in Circle Dock and replace them with a C# hook for the mouse. In the source code you have, there is a project called "Global Hook" and a file called "UserActivityHook.cs". We can easily implement the mouse hook with it. I will work on an Alpha 7 with this.

For the DLL files in the Debug folder used to execute the program, I just manually copied the Orbit.XXXXX.dll ones and the AMS.Profile.dll because they were already built in other projects. The GlobalMouseKeyboardHook.dll is generated by the Circle Dock solution from the "Global Hook" project when you build the solution. The dll files you see in the main Circle Dock project folder is what the IDE references and it will complain if they are not there. They are not used for execution.

Can you tell me the steps you took in compiling the "x86" version of Circle Dock and which files you moved around?


P.S. If you look in the License.txt file in the main Circle Dock folder, you will find the links to the AMS and Orbit Dock projects.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #70 on: August 18, 2008, 07:15:19 PM »

BTW, which other problems did you encounter?
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
Ti133700N
Participant
*
Posts: 4


View Profile Give some DonationCredits to this forum member
« Reply #71 on: August 18, 2008, 08:51:30 PM »

I confirm, by setting Platform Target to x86 I was able to compile and execute CircleDock on my Windows Vista Ultimate 64-bit.



Can't wait to see the next improvements. If you need assistance to test some functionalities, I will gladly help.
Logged
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #72 on: August 18, 2008, 09:15:00 PM »

I confirm, by setting Platform Target to x86 I was able to compile and execute CircleDock on my Windows Vista Ultimate 64-bit.
Can't wait to see the next improvements. If you need assistance to test some functionalities, I will gladly help.

Welcome aboard! I'll try to compile an x86 version on my computer and post that version up for now so that people with 64-bit computers can test it while I rework the hook to make it run on 64-bit without x86 compilation.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
Ti133700N
Participant
*
Posts: 4


View Profile Give some DonationCredits to this forum member
« Reply #73 on: August 18, 2008, 09:49:37 PM »

Welcome aboard! I'll try to compile an x86 version on my computer and post that version up for now so that people with 64-bit computers can test it while I rework the hook to make it run on 64-bit without x86 compilation.

Thanks, I've noticed that you are already planning to translate your app in other languages than English so I've included a French.ini file with this post in case you wanted to test it. I'm french canadian so I guess I could help with the french translation. Sometimes the french characters can cause problems so I thought it would be a good idea to test it early in the development stage.

* French.ini (1.6 KB - downloaded 202 times.)
Logged
VideoInPicture
Honorary Member
**
Posts: 467



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #74 on: August 18, 2008, 10:01:16 PM »

Welcome aboard! I'll try to compile an x86 version on my computer and post that version up for now so that people with 64-bit computers can test it while I rework the hook to make it run on 64-bit without x86 compilation.

Thanks, I've noticed that you are already planning to translate your app in other languages than English so I've included a French.ini file with this post in case you wanted to test it. I'm french canadian so I guess I could help with the french translation. Sometimes the french characters can cause problems so I thought it would be a good idea to test it early in the development stage.

Thanks, that super. I haven't even told anybody how to translate it yet. If you want to test out the French on your system, go into the Settings Folder -> Config.ini and under [Language], change the path to your file.

I'll be sure to give people credit for their contributions.
Logged

Author of Circle Dock: http://circledock.wikidot.com
Author of Video In Picture: http://videoinpicture.wikidot.com
Author of Webcam Signature: http://webcamsignature.wikidot.com
Author of Easy Unicode Paster: http://easyunicodepaster.wikidot.com
Pages: Prev 1 2 [3] 4 5 6 Next   Go Up
  Reply  |  New Topic  |  Print  
 
Jump to:  
   Forum Home   Thread Marks Chat! Downloads Search Login Register  

DonationCoder.com | About Us
DonationCoder.com Forum | Powered by SMF
[ Page time: 0.046s | Server load: 0.03 ]