Messages - Wordzilla [ switch to compact view ]

Pages: prev1 ... 69 70 71 72 73 [74] 75 76 77 78 79 ... 92next
366
The problem lies with Moby. It makes a local connection to listen on any ports, and when this is denied it causes Moby to crash.

http://cjoint.com/data/kBaO64QHyo.htm
-Defenestration (October 26, 2006, 06:24 PM)

After "debugging" for a long time (which almost killed me ;D) I can now say with confidence that this port listening issue is not in any way malicious nor is it any bug in Moby code.

Moby is developed in Visual Studio .NET 2005, which offers this brand-new option to "Make single instance application".

single_instance.PNG

port_listening.png

What it does is only letting the end-user have just one copy of the program running at the same time. If another session of the same program is initiated, what you'll see is the first instance of that program gets focused and brought to the front on screen.

If the application is compiled without "Make single instance application" checked, it does not listen to any port. Also I made a compilation of Moby without enforcing "single instance", it turned out no port was opened/listened to.


Unfortunately, I was not able to find anything online, or in MSDN archives, that talks about this issue.  :(

However, thank god I was able to capture this fleeting "connection established" event:

communicate.PNG

It basically showed that the second Moby instance launched was communicating with the first one that was already running, after this split-second contact, the second instance closed itself and the first one was focused and brought to the front. And that established connection was dropped.

So based on Overview of the Visual Basic Application Model, I'm guessing this port listening is necessary for a "make single instance" application to:
1. Raising the "StartupNextInstance" event
2. Pass command-line arguments to the first instance
3. Tell the first instance to focus self
etc. before the second instance auto exits.


I do encourage everybody to test this out on Visual Studio 2005 Professional or Express edition, with Process Explorer, which is a marvelous free tool for monitoring application runtime behaviors.


Thank you again Defenestration :Thmbsup:, I'll def use Process Explorer heavily to test & improve Moby before releasing.

- Anderson

367
It's the Properties dialog of Process Explorer (http://www.sysinternals.com/Utilities/ProcessExplorer.html)
-Defenestration (October 26, 2006, 10:16 PM)

Thanks! I ran Process Explorer and checked Moby's runtime behavior.

It seems that Moby listens to a random port (69xx, 70xx, etc. ) when running for no reason.

It really shouldn't since no one tells it to, port listening is absolutely unnecessarily and it does nothing for the program. Dunno why this happens  :-\ Anyway, I'll try to figure it out.

Thanks again for letting me know this issue.   :Thmbsup:

Process Explorer is a super powerful & handy program, no wonder Microsoft bought Sysinternals




368
The problem lies with Moby. It makes a local connection to listen on any ports, and when this is denied it causes Moby to crash.
-Defenestration (October 26, 2006, 06:24 PM)

hmm.. that's a bit intriguing. Coz afaik strictly 100% of all code blocks related to online updating are protected head-to-toe against unhandled exceptions, which means nothing would cause moby to crash by itself.  :)

btw, what firewall was that in the screenshot?

369
I'm using Look 'n' Stop 2.05p3 with Phantom's rule-set (although using the supplied Enhanced rule set should be equivalent) which you can get from http://wilderssecurity.com/showthread.php?t=98973.
-Defenestration (October 25, 2006, 11:17 AM)

I couldn't get Look 'n' Stop installed. It seems that the installer tried to install a unsigned device driver and the "Continue Anyway" window kept flashing, which made it impossible to proceed, then I had to kill the installer through task manager.  :(

So if you remove the rule in your firewall that allows Moby to connect, do you get an alert when Moby starts ?
If you then deny that connection, what happens ?
-Defenestration (October 25, 2006, 11:17 AM)

No. If "auto-check for updates" is disabled (default), moby doesn't by itself attempt to connect to the Internet at all. If enabled, moby will try to connect to DC server to download a 6-byte version info file to determine if a newer update is available. This request might get blocked by firewall but no error message is displayed to the user, let alone crashing the program itself. (Tested with ZoneAlarm and native Windows XP SP2 firewall)

It might be possible that the Look 'n' Stop firewall prevents .NET Framework 2.0 web component (which moby uses) from loading, which causes the framework to display an error message.

370
Before any window was displayed, my firewall alerted me that it wanted to connect to the Internet and I clicked Deny.).
-Defenestration (October 25, 2006, 11:00 AM)

Weird. AFAIK, moby does not at all connect to the Internet unless "auto-check for updates" is enabled.  :(

Which firewall is currently active on your PC?  :) I think I'll have to test moby with it.

Pages: prev1 ... 69 70 71 72 73 [74] 75 76 77 78 79 ... 92next
Go to full version