Author: jerome
Date: 2009-07-30 12:32:13 +0200 (Thu, 30 Jul 2009)
New Revision: 5240

Modified:
   
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/TuxUtils.pas
   
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.dfm
   
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.pas
Log:
* Fixed a bug while quitting windows.

Modified: 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/TuxUtils.pas
===================================================================
--- 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/TuxUtils.pas
      2009-07-30 09:24:39 UTC (rev 5239)
+++ 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/TuxUtils.pas
      2009-07-30 10:32:13 UTC (rev 5240)
@@ -11,6 +11,7 @@
     function DownloadHTTP(const AUrl : string): string;
     function getStates(var values : TStringList): boolean;
     function isTuxDroidServerStarted() : boolean;
+    function KillServer(): Integer;
     function isDongleConnected(states : TStringList) : boolean;
     function isSoundOn(states : TStringList) : boolean;
     function isRadioConnected(states : TStringList)  : boolean;
@@ -368,4 +369,32 @@
 end;
 
 
+function KillServer(): Integer;
+const
+  PROCESS_TERMINATE = $0001;
+var
+  ContinueLoop: BOOL;
+  FSnapshotHandle: THandle;
+  FProcessEntry32: TProcessEntry32;
+begin
+  Result := 0;
+  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
+  FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
+  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
+  while Integer(ContinueLoop) <> 0 do
+    begin
+      if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
+        UpperCase('pythonForTuxdroid.exe')) or 
(UpperCase(FProcessEntry32.szExeFile) =
+        UpperCase('pythonForTuxdroid.exe'))) then
+        Result := Integer(TerminateProcess(
+                          OpenProcess(PROCESS_TERMINATE,
+                                      BOOL(0),
+                                      FProcessEntry32.th32ProcessID),
+                                      0));
+       ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
+    end;
+  CloseHandle(FSnapshotHandle);
+end;
+
+
 end.

Modified: 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.dfm
===================================================================
--- 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.dfm
 2009-07-30 09:24:39 UTC (rev 5239)
+++ 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.dfm
 2009-07-30 10:32:13 UTC (rev 5240)
@@ -50,6 +50,7 @@
     000000000000000100000001000080030000C0030000E0070000F01F0000}
   OldCreateOrder = False
   Position = poScreenCenter
+  OnClose = FormClose
   OnCloseQuery = FormCloseQuery
   OnCreate = FormCreate
   PixelsPerInch = 96
@@ -60,6 +61,7 @@
     Width = 955
     Height = 619
     TabOrder = 0
+    Silent = False
     RegisterAsBrowser = True
     RegisterAsDropTarget = False
     OnDocumentComplete = EmbeddedWB1DocumentComplete
@@ -87,7 +89,7 @@
   end
   object StatusBar1: TStatusBar
     Left = 0
-    Top = 607
+    Top = 600
     Width = 955
     Height = 19
     Panels = <>

Modified: 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.pas
===================================================================
--- 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.pas
 2009-07-30 09:24:39 UTC (rev 5239)
+++ 
software_suite_v3/software/tool/tux_droid_browser/windows/trunk/tux_droid_browser/Unit1.pas
 2009-07-30 10:32:13 UTC (rev 5240)
@@ -148,6 +148,7 @@
     procedure saveProperties();
     procedure DefaultHandler(var Msg); override;
     procedure DelegateInitTimer(Sender: TObject);
+    procedure FormClose(Sender: TObject; var Action: TCloseAction);
 
   private
     { D�clarations priv�es }
@@ -316,9 +317,7 @@
 procedure TForm1.WMQueryEndSession(var Message: TWMQueryEndSession);
 begin
   inherited;
-  ConnectionChecker.Enabled := false;
-  Shell_NotifyIcon(Nim_DELETE, @IconData);
-  Application.Terminate;
+  Form1.Quit1Click(nil);
   Message.Result := 1;
 end;
 
@@ -785,5 +784,10 @@
     end;
 end;
 
+procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
+begin
+  ConnectionChecker.Enabled := false;
+end;
+
 end.
 


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to