delphi4arab منتديات دلفي للعرب
الغاء اصدار قديم لعميل - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : الغاء اصدار قديم لعميل (/showthread.php?tid=6595)



الغاء اصدار قديم لعميل - تلميذ - 27-11-2014

سؤال الى اساتذتى الكرام جزاهم الله كل خير

ما هى الطريقة التى يمكن بها عند اخراج اصدار جديد لعميل مرتبطا بسيرفر ان يتوقف الاصدار القديم .
مثلا البالتوك او الاسكاى بى عند نزول اصدار جديد يتوقف القديم ولا يعمل الا بتحديث وانا لا اتكلم هنا عن تحديث لكن عدم اتصال العميل لاصدار قديم و يتصل فقط بالسيرفر الاصدار الحديث ؟
هل يحتاج الامر الى وضع كود من خلال اصدار جديد للسيرفر مع اصدار جديد للعميل ليتم التحقق؟


الغاء اصدار قديم لعميل - onexite - 28-11-2014

تضع ملف نصي على استضافة وتضع فيه قائمة النسخ القديمة مثلا
version.txt
PHP كود :
0.1
0.2
0.3
0.4 
الكود يكون من هذا الشكل
PHP كود :
stringlist:=
'http://www.delphi4arab.net/version.txt'
for i:=0 to stringlist.count-1 do
if 
myversion=stringlist[i] then close; 



الغاء اصدار قديم لعميل - تلميذ - 02-12-2014

شكرا استاذى الكريم onexite و جزاك الله كل خير
سأجرب المعلومة القيمة ولك منى الف شكر و تقدير على اهتمامك و تعليمك لى لما جهلته


الغاء اصدار قديم لعميل - onexite - 02-12-2014

PHP كود :
uses WinInet;

procedure TForm3.btn1Click(Sender: TObject);
var 
i:SmallInt;
list:
TStringList;
 
tn1: TTreeNode;
begin
list:=TStringList.Create;
list.
DelimitedText:=GetUrl('http://www.site.com/file.txt');
list.
Delimiter:=#13;
with tv1.Items do
  
begin
    Clear
;
    
tn1 := Add(nil, 'الاعضاء');
    for 
I := 0 to list.Count-1 do
    
AddChild(tn1,list[i]);
  
end;
  list.
Free;

end;

function 
TForm3.GetUrl(Url: string): string;
const
BuffSize = 2048;
var
  
hInter   : HINTERNET;
  
UrlHandle: HINTERNET;
  
BytesRead: Cardinal;
  
Buffer   : Pointer;
begin
  Result
:='';
  
hInter := InternetOpen('', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
  if 
Assigned(hInter) then
  begin
    GetMem
(Buffer,BuffSize);
    try
        
UrlHandle := InternetOpenUrl(hInter, PChar(Url), nil, 0, INTERNET_FLAG_RELOAD, 0);
        if 
Assigned(UrlHandle) then
        begin
          InternetReadFile
(UrlHandle, Buffer, BuffSize, BytesRead);
          if 
BytesRead>0 then
           SetString
(Result, PAnsiChar(Buffer), BytesRead);
           
InternetCloseHandle(UrlHandle);
        
end;
    finally
      
FreeMem(Buffer);
    
end;
    
InternetCloseHandle(hInter);
  
end
end
; 


[صورة: iTL43j.png]


الغاء اصدار قديم لعميل - تلميذ - 10-12-2014

تم حل الاشكال جزاك الله كل خير و عمل معى بنجاح توقيف الاصدار القديم
بارك فيك استاذى الكريم
لكن لم افهم كيفية عمل تحديث الى للبرنامج كما وضعته حضرتك حاولت وجربت عدة محاولات بما فيها بعض المواضيع بالمنتدى و قمت بالاتى :

1- عمل ملف تيكست
2- استخدام موقع


الغاء اصدار قديم لعميل - تلميذ - 10-12-2014

بالنسبة استاذى لـ TreeNode قمت بعمل فورم يحتوى على TreeView ولكن هل من المفروض ان يحل محل فورم الابديت ؟

بحيث عند الاتصال و جلب ملف التيكست GetUrl يقوم بعرض النسخ فى الـ Tree ام ماذا ؟