# Native Code > برنامه نویسی در Delphi > کامپوننت های سایر شرکت ها، و توسعه کامپوننت >  همکاری برای ساخت اضافه گر فارسی به XP

## Mohammad_Mnt

می خواهیم Setup ای بسازیم که زبان فارسی رو بدون دخالت کاربر به ویندوز XP اضافه کنه
من فعلا لیست فایل هایی که برای نصب این گزینه لازم است رو می نویسم

----------


## Mohammad_Mnt

85F1255.FO_
85F1256.FO_
85F1257.FO_
85F874.FO_
85S1255.FO_
85S1256.FO_
85S1257.FO_
85S874.FO_
AGT0401.DL_
AGT0401.HL_
AGT040D.DL_
AGT040D.HL_
AHRONBD.TT_
ANDLSO.TT_
ANGSA.TT_
ANGSAB.TT_
ANGSAI.TT_
ANGSAU.TT_
ANGSAUB.TT_
ANGSAUI.TT_
ANGSAUZ.TT_
ANGSAZ.TT_
ARTRBDO.TT_
ARTRO.TT_
BROWA.TT_
BROWAB.TT_
BROWAI.TT_
BROWAU.TT_
BROWAUB.TT_
BROWAUI.TT_
BROWAUZ.TT_
BROWAZ.TT_
CORDIA.TT_
CORDIAB.TT_
CORDIAI.TT_
CORDIAU.TT_
CORDIAUB.TT_
CORDIAUI.TT_
CORDIAUZ.TT_
CORDIAZ.TT_
COUE1255.FO_
COUE1256.FO_
COUE1257.FO_
COUF1255.FO_
COUF1256.FO_
COUF1257.FO_
DAVID.TT_
DAVIDBD.TT_
DAVIDTR.TT_
ESTRE.TT_
FRANK.TT_
GAUTAMI.TT_
KARTIKA.TT_
LATHA.TT_
LVNM.TT_
LVNMBD.TT_
MANGAL.TT_
MRIAM.TT_
MRIAMC.TT_
MRIAMFX.TT_
MRIAMTR.TT_
MSDLG874.FO_
NOISE.TH_
NRKIS.TT_
RAAVI.TT_
ROD.TT_
RODTR.TT_
SERE1255.FO_
SERE1256.FO_
SERE1257.FO_
SERF1255.FO_
SERF1256.FO_
SERF1257.FO_
SHRUTI.TT_
SIMPBDO.TT_
SIMPFXO.TT_
SIMPO.TT_
SMAE1255.FO_
SMAE1256.FO_
SMAE1257.FO_
SMAF1255.FO_
SMAF1256.FO_
SMAF1257.FO_
SSEE1255.FO_
SSEE1256.FO_
SSEE1257.FO_
SSEE874.FO_
SSEF1255.FO_
SSEF1256.FO_
SSEF1257.FO_
SSEF874.FO_
SSERIFE.FO_
SSERIFEE.FO_
SSERIFEG.FO_
SSERIFER.FO_
SSERIFET.FO_
SSERIFF.FO_
SSERIFFE.FO_
SSERIFFG.FO_
SSERIFFR.FO_
SSERIFFT.FO_
SYLFAEN.TT_
TRADBDO.TT_
TRADO.TT_
TUNGA.TT_
UPCDB.TT_
UPCDBI.TT_
UPCDI.TT_
UPCDL.TT_
UPCEB.TT_
UPCEBI.TT_
UPCEI.TT_
UPCEL.TT_
UPCFB.TT_
UPCFBI.TT_
UPCFI.TT_
UPCFL.TT_
UPCIB.TT_
UPCIBI.TT_
UPCII.TT_
UPCIL.TT_
UPCJB.TT_
UPCJBI.TT_
UPCJI.TT_
UPCJL.TT_
UPCKB.TT_
UPCKBI.TT_
UPCKI.TT_
UPCKL.TT_
UPCLB.TT_
UPCLBI.TT_
UPCLI.TT_
UPCLL.TT_
VGAF1255.FO_
VGAF1256.FO_
VGAF1257.FO_
VGAF874.FO_
VGAFIX.FO_
VGAFIXE.FO_
VGAFIXG.FO_
VGAFIXR.FO_
VGAFIXT.FO_
VGAOEM.FO_
VGAS1255.FO_
VGAS1256.FO_
VGAS1257.FO_
VGAS874.FO_
VGASYS.FO_
VGASYSE.FO_
VGASYSG.FO_
VGASYSR.FO_
VGASYST.FO_

البته من یک بار این تیک رو برداشتم و بعد دوباره زدم که این فایل ها رو درخواست کرد . فکر می کنید فایل های بیشتری برای این کار لازمه ؟

----------


## Hossein Bazyan

راه خوبی رو شروع کردی امیدوارم که موفق باشی . هر کمکی از من بربیاد با کمال میل .
اما در مورد لیست بالا اینا که فقط فونتها هستند یعنی به Dll ها کاری نداره ؟
البه اگه برای اولین بار روی آن تیک کلیک کنی یکسری Dll را اضافه میکنه که با برداشتن تیک آن Dll ها را برنمیداره پس بهتره که از کامپیوتری جهت این کار استفاده شود که برای اولین بار آن تیک در آن زده میشود .

----------


## Mohammad_Mnt

نوشته شده توسط Javad_Hosseiny :

من یک تکه کد دارم برای انجام یک سری تنظیمات در رجیستری و کپی فایلهایی جهت صفحه کلید فارسی و یک سری تنظیمات فارسی (فایل kbdfa.dll , l_intl.nls و ....) (تغییر زبان پیش فرض در قسمت regional languague کنترل پنل و انتخاب کشور و ....) 
البته بالطبع آدرس رجیستری موردنیاز داخلش هست. (البته پارامتر می گیرد (برای تعیین تنظیمات برای زبان خاص) مثلا: NonUnicode_Lang(Ar);


//-------------------
procedure NonUnicode_Lang(Language: TLanguageName);
begin
  Reg := TRegistry.Create;
  with Reg do
  try
    RootKey := HKEY_LOCAL_MACHINE;
    if OpenKey('SYSTEM\CurrentControlSet\Control\Nls\Code  Page',False) then
    begin
        case Language of
          Fa,Ar : begin
               if ReadString('ACP') <> '1256' then
               begin
                        WriteString('ACP','1256');
                        WriteString('OEMCP','720');
                        WriteString('MACCP','10004');
               end;
             end;
        end;//case
        CloseKey;
    end;
    if OpenKey('SYSTEM\CurrentControlSet\Control\Nls\Lang  uage',False) then
    begin
      case Language of
        Ar : begin
               if ReadString('Default') <> '0401' then
                WriteString('Default','0401');
             end;
        Fa : begin
               if ReadString('Default') <> '0429' then
                WriteString('Default','0429');
             end;
      end;//case
      if ReadString('0429') <> 'l_intl.nls' then
        WriteString('0429','l_intl.nls');
      CloseKey;
    end;
    if OpenKey('SYSTEM\CurrentControlSet\Control\Nls\Lang  uage Groups',True) then
    begin
      if ReadString('d') <> '1' then
        WriteString('d','1');
      CloseKey;
    end;
    if OpenKey('SYSTEM\CurrentControlSet\Control\Nls\Loca  le',True) then
    begin
      if ReadString('00000429') <> 'd' then
        WriteString('00000429','d');
      CloseKey;
    end;
    if OpenKey('SYSTEM\CurrentControlSet\Control\keyboard layouts\00000429',True) then
    begin
        if ReadString('Layout File') <> 'KBDFA.DLL' then
                WriteString('Layout File','KBDFA.DLL');
        if ReadString('Layout Text') <> 'Farsi' then
                WriteString('Layout Text','Farsi');
        CloseKey;
    end;
    RootKey := HKEY_CURRENT_USER;
    if OpenKey('Control Panel\International',False) then
    begin
        if ReadString('Locale') <> '00000429' then
        begin
                WriteString('iCalendarType','2');
                WriteString('iCountry'   ,'981');
                WriteString('iCurrDigits','2');
                WriteString('iCurrency'  ,'2');
                WriteString('iDate'      ,'2');
                WriteString('iDigits'    ,'2');
                WriteString('iNegCurr'   ,'3');
                WriteString('iNegNumber' ,'3');
                WriteString('iTLZero'    ,'1');
                WriteString('Locale'     ,'00000429');
                WriteString('NumShape'   ,'0');
                WriteString('s1159','&#222;.&#217;');
                WriteString('s2359','&#200;.&#217;');
                WriteString('sCountry' ,'Iran');
                WriteString('sCurrency','&#209;&#237;&#199;&#225;'  );
                WriteString('sLanguage','FAR');
                WriteString('sLongDate','yyyy/MM/dd');
//                WriteString('sNativeDigits','0123456789');
                WriteString('sShortDate','yyyy/MM/dd');
        end;
        CloseKey;
    end;
    if OpenKey('Control Panel\International\Geo',False) then
    begin
        if ReadString('Nation') <> '116' then
        begin
//                WriteString('Nation','116');
        end;
        CloseKey;
    end;
  finally
    Reg.Free;
  end;//try..finally
//end;
end;


من این کد را روی سیستم های مختلف چک کردم اما بدین صورت که قبلا پشتیبانی از زبانهای راست به چپ نویس روش نصب بوده (یعنی فایلهای موردنیاز در فولدر ویندوز موجود است) (والبته اگر قبلا تیکش خورده باشد ومجددا برداشته شده باشد نیز درست کار می کند) (البته این بخشی از یک برنامه setup بنده است که قابلیت نصب dll های و رجیستر کردن آنها و نصب فونت (از طریق ثبت در رجیستری) و ... )

----------


## Mohammad_Mnt

نوشته شده توسط mkbo_webmaster :

من یه تابع به زبان VB6 نوشتم که میتونه با بکار گیری توابع API تشخیص بده که آیا سیستم عامل شما بطور کامل فارسی رو پشتیبانی میکنه یا نه ؟
که با Windows me به بالا کار میکنه.
لازم به ذکره که بخاطر نوشتن این کد سه تا برنامه جداگانه نوشتم که کدهای فارسی رو پیدا کنم و حسابی جونم در اومد. امیدوارم که برای توسعه نرم افزارهای دوستان مفید واقع بشه.

*Public Function Is_Your_OS_Full_Farsi_Support() As Boolean*
  Dim Buffer As String, Retval As String
  Dim GetInfo As String
  Dim CYINFO As Integer
  Dim Info As Long

For CYINFO = 1 To 11
    Select Case CYINFO
        Case 1
            Info = LOCALE_SENGLANGUAGE
        Case 2
            Info = LOCALE_SABBREVLANGNAME
        Case 3
            Info = LOCALE_IDEFAULTLANGUAGE
        Case 4
            Info = LOCALE_IDEFAULTCOUNTRY
        Case 5
            Info = LOCALE_IDEFAULTCODEPAGE
        Case 6
            Info = LOCALE_SENGCOUNTRY
        Case 7
            Info = LOCALE_SABBREVCTRYNAME
        Case 8
            Info = LOCALE_ILANGUAGE
        Case 9
            Info = LOCALE_SLANGUAGE
        Case 10
            Info = LOCALE_ICOUNTRY
        Case 11
            Info = LOCALE_SCOUNTRY
    End Select
        
      
      Buffer = String$(255, 0)
      Retval = GetLocaleInfo(LOCALE_USER_DEFAULT, Info, Buffer, Len(Buffer))
      If Retval > 0 Then
        GetInfo = Left$(Buffer, Retval - 1)
      Else
        GetInfo = ""
      End If
      
    Select Case CYINFO
        Case 1
            If GetInfo <> "Farsi" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 2
            If GetInfo <> "FAR" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 3
            If GetInfo <> "0429" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 4
            If GetInfo <> "981" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 5
            If GetInfo <> "720" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 6
            If GetInfo <> "Iran" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 7
            If GetInfo <> "IRN" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 8
            If GetInfo <> "0429" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 9
            If GetInfo <> "Farsi" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 10
            If GetInfo <> "981" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
        Case 11
            If GetInfo <> "Iran" Then
                Is_Your_OS_Full_Farsi_Support = False
                Exit Function
            End If
    End Select

Next CYINFO

Is_Your_OS_Full_Farsi_Support = True
*End Function*

----------


## Mohammad_Mnt

> راه خوبی رو شروع کردی امیدوارم که موفق باشی . هر کمکی از من بربیاد با کمال میل .
> اما در مورد لیست بالا اینا که فقط فونتها هستند یعنی به Dll ها کاری نداره ؟
> البه اگه برای اولین بار روی آن تیک کلیک کنی یکسری Dll را اضافه میکنه که با برداشتن تیک آن Dll ها را برنمیداره پس بهتره که از کامپیوتری جهت این کار استفاده شود که برای اولین بار آن تیک در آن زده میشود .


دو سه تا Dll هم توشه ولی حرف شما کاملا" درسته .
کسی نمی خواد ویندوزش رو عوض کنه ؟  :لبخند گشاده!:

----------


## Hossein Bazyan

من امروز ویندوزم را از نو نصب کردم و بعد تاپیک شما را دیدم و اگه زودتر میدیم حتما کنترل میکردم

----------


## Mohammad_Mnt

احتمالا" فردا یکی نصب میکنم :)

----------


## sh

از ابزار های مثال Filemonintor  و regmonitor هم حتما استفاده کن

----------


## mononoor

ببینم می خواهید بعد از نصب ویندوز این کار بشود یا این که در حین نصب ویندوز و بدون پرسیدن عملیات فارسی کردن انجام شود

----------


## joker

*خود میکروسافت که ایکس پی را کامل فارسی کرده دیگه چه نیازی هست ؟
http://www.barnamenevis.org/sh...ad.php?t=46706
*

----------


## Mohammad_Mnt

> ببینم می خواهید بعد از نصب ویندوز این کار بشود یا این که در حین نصب ویندوز و بدون پرسیدن عملیات فارسی کردن انجام شود


بعد از نصب !



> خود میکروسافت که ایکس پی را کامل فارسی کرده دیگه چه نیازی هست ؟


من *نمی خوام ویندوز فارسی بشه* ، من می خوام فقط زبان فارسی به ویندوز اضافه بشه که مشکلی توی کار کردن با برنامه های فارسی نباشه .

----------


## Hossein Bazyan

جناب  Mohammad_Mnt 
در مورد کارهای گروهی مسئله یه خورده فرق میکنه ببینید شما بعد از ایجاد تاپیک خیلی از دوستان نظر دادند اما هیچکدام سازنده نبود یا نظر در مورد تاپیک بود و یا چیزهای دیگه . شما میخواید چند نفر باهم راهی بیابید که فارسی را در ویندوزهایی که فراسی روی آنها نصب نشده را نصب کنید . 
پس نفراتت را انتخاب و تقسیم کار کن  و نتیجه را هم به بقیه دوستان اعلام کن 
در همین راستا چه کاری از دست من برمیاد ؟

----------


## Mohammad_Mnt

به نظر من هر کسی هر نکته ای که در مورد به نتیجه رسیدن این کار کمک می کنه بگه . این کار پروژه ی مشخصی نیست که بخواد تقسیم کار صورت بگیره .
من فعلا" دارم روی رجیستری کار می کنم . شما هم هر کاری که به نظرت می رسه انجام بده . ممنون که اهمیت قائل شدین :)

----------


## ali_kolahdoozan

من با اینستال شیلد یه فارسی ساز ساختم جای پ و .... رو درست میکنه . اعداد رو هم فارسی نشون می ده . اگه به درد میخوره بگید

----------


## Mohammad_Mnt

لیست اصلاح شده ی فایل های مورد نیاز
85F1255.FO_
85F1256.FO_
85F874.FO_
85S1255.FO_
85S1256.FO_
85S874.FO_
AGT0401.DL_
AGT0401.HL_
AGT040D.DL_
AGT040D.HL_
AHRONBD.TT_
ANDLSO.TT_
ANGSA.TT_
ANGSAB.TT_
ANGSAI.TT_
ANGSAU.TT_
ANGSAUB.TT_
ANGSAUI.TT_
ANGSAUZ.TT_
ANGSAZ.TT_
ARTRBDO.TT_
ARTRO.TT_
BROWA.TT_
BROWAB.TT_
BROWAI.TT_
BROWAU.TT_
BROWAUB.TT_
BROWAUI.TT_
BROWAUZ.TT_
BROWAZ.TT_
CORDIA.TT_
CORDIAB.TT_
CORDIAI.TT_
CORDIAU.TT_
CORDIAUB.TT_
CORDIAUI.TT_
CORDIAUZ.TT_
CORDIAZ.TT_
COUE1255.FO_
COUE1256.FO_
COUF1255.FO_
COUF1256.FO_
C_10004.NL_
C_10005.NL_
C_10021.NL_
C_28596.NL_
C_708.NL_
C_720.NL_
C_862.NL_
C_864.NL_
C_ISCII.DL_
DAVID.TT_
DAVIDBD.TT_
DAVIDTR.TT_
FRANK.TT_
FTLX041E.DL_
KBDA1.DLL
KBDA2.DLL
KBDA3.DLL
KBDARME.DLL
KBDARMW.DLL
KBDDIV1.DLL
KBDDIV2.DLL
KBDFA.DLL
KBDGEO.DLL
KBDHEB.DLL
KBDINBE1.DL_
KBDINBEN.DL_
KBDINDEV.DLL
KBDINGUJ.DLL
KBDINHIN.DLL
KBDINKAN.DLL
KBDINMAL.DL_
KBDINMAR.DLL
KBDINPUN.DLL
KBDINTAM.DLL
KBDINTEL.DLL
KBDSYR1.DLL
KBDSYR2.DLL
KBDTH0.DLL
KBDTH1.DLL
KBDTH2.DLL
KBDTH3.DLL
KBDURDU.DLL
KBDUSA.DL_
KBDVNTC.DLL
LVNM.TT_
LVNMBD.TT_
MRIAM.TT_
MRIAMC.TT_
MRIAMFX.TT_
MRIAMTR.TT_
MSDLG874.FO_
NRKIS.TT_
ROD.TT_
RODTR.TT_
SERE1255.FO_
SERE1256.FO_
SERF1255.FO_
SERF1256.FO_
SIMPBDO.TT_
SIMPFXO.TT_
SIMPO.TT_
SMAE1255.FO_
SMAE1256.FO_
SMAF1255.FO_
SMAF1256.FO_
SMAF1257.FO_
SSEE1255.FO_
SSEE1256.FO_
SSEE874.FO_
SSEF1255.FO_
SSEF1256.FO_
SSEF874.FO_
THAWBRKR.DL_
TRADBDO.TT_
TRADO.TT_
UPCDB.TT_
UPCDBI.TT_
UPCDI.TT_
UPCDL.TT_
UPCEB.TT_
UPCEBI.TT_
UPCEI.TT_
UPCEL.TT_
UPCFB.TT_
UPCFBI.TT_
UPCFI.TT_
UPCFL.TT_
UPCIB.TT_
UPCIBI.TT_
UPCII.TT_
UPCIL.TT_
UPCJB.TT_
UPCJBI.TT_
UPCJI.TT_
UPCJL.TT_
UPCKB.TT_
UPCKBI.TT_
UPCKI.TT_
UPCKL.TT_
UPCLB.TT_
UPCLBI.TT_
UPCLI.TT_
UPCLL.TT_
VGAF1255.FO_
VGAF1256.FO_
VGAF874.FO_
VGAS1255.FO_
VGAS1256.FO_
VGAS874.FO_

----------


## Mohammad_Mnt

> من با اینستال شیلد یه فارسی ساز ساختم جای پ و .... رو درست میکنه . اعداد رو هم فارسی نشون می ده . اگه به درد میخوره بگید


چرا که نه  :چشمک:  بذار ببینیم چه کرده ای  :لبخند گشاده!:

----------


## Mohammad_Mnt

فکر کنم تغییرات کلی این ها باشن که ضمیمه کردم

----------


## Delphi_OnLine999

فکر می کنم منظور این دوست عزیزم بعد است نصب است .
راستی آیا راهی است که بتوان در حین نصب ویندوز و بدون پرسیدن عملیات فارسی کردن این کار و انجام داد؟؟؟

فکر می کنم منظور این دوست عزیزم بعد از نصب است .
راستی آیا راهی است که بتوان در حین نصب ویندوز و بدون پرسیدن عملیات فارسی کردن این کار و انجام داد؟؟؟

----------


## Mohammad_Mnt

تنها مشکل باقی مانده : http://www.barnamenevis.org/sh...ad.php?t=51087

----------


## Mohammad_Mnt

این هم از برنامه نصب کننده ی زبان فارسی برای ویندوز XP
فقط مشکل نام فونت های FON. مونده. لطفا" تست کنید ببینید درست جواب می ده یا نه
لینک جدید دانلود ( همراه با سورس )

----------


## arash_ebrahimi_nk

man test kardam faghat *ba ReStart kardan* javab mide

----------


## Mohammad_Mnt

به جز ریستارت مشکل دیگه ای نداشت ؟

----------


## arash_ebrahimi_nk

نه - کار من رو که راه انداخت

----------


## arash_ebrahimi_nk

اما ری استارت نشدن سیستم خیلی برام مهمه 
کسی راهی بلده 
؟
بهتر نیست این تاپیک به بخش دلفی منتقل بشه ؟

یه چیز دیگه اینکه چطور میتونم دقیقا چک کنم که آیا این فایل ها بطور کامل نصب شدن یا نه ؟
منظورم اینه که بفهمم طرف سیستم رو ری استارت و فایل ها بطور کامل نصب شدن یا نه؟

----------


## vcldeveloper

> اما ری استارت نشدن سیستم خیلی برام مهمه


برای اعمال برخی تغییرات در ویندوز راهی جز Restart کردن ندارید.

----------


## arash_ebrahimi_nk

در مورد چک کردن چی ؟

----------


## arash_ebrahimi_nk

> نوشته شده توسط mkbo_webmaster :
> 
> من یه تابع به زبان VB6 نوشتم که میتونه با بکار گیری توابع API تشخیص بده که آیا سیستم عامل شما بطور کامل فارسی رو پشتیبانی میکنه یا نه ؟
> که با Windows me به بالا کار میکنه.
> لازم به ذکره که بخاطر نوشتن این کد سه تا برنامه جداگانه نوشتم که کدهای فارسی رو پیدا کنم و حسابی جونم در اومد. امیدوارم که برای توسعه نرم افزارهای دوستان مفید واقع بشه.
> 
> *Public Function Is_Your_OS_Full_Farsi_Support() As Boolean*
>   Dim Buffer As String, Retval As String
>   Dim GetInfo As String
> ...


میشه یه نفر این کد رو به زبان دلفی بنویسه؟

----------


## آیدا رضایی

dooste aziz .
alan ke man daram finglish minvisam barname shoma ro nasb kardam .
moteasefane jaye horoofe keyboard ro beham mirize ! .

----------


## arash_ebrahimi_nk

برنامه آقا محمد فایل Kbdf استاندارد را نصب میکنه. و جای حروف رو مطابق با اون قرار میده.
ما برای سیستمهایی ازش استفاده میکنیم که اصلا زبان فارسی رو پشتیبانی نمیکنن.

----------


## حسن رفیعی

سلام به همگی
من برنامه اش رو با دلفی نوشتم البته چون همش با رجیستری کار می کنی دلفی یا زبان دیگری نداره و بالاخره من تست کردم و الان توی چند تا برنامه هم گذاشتم و به بازار دادم هیچ مشکلی هم نداره بدین صورت کار می کنه .
چک می کند که آیا زبان فارسی روی سیستم نصب شده یا نه البته روی سیستم عامل های 2000 و ایکس پی . در صورت عدم نصب زبان فارسی زبان فارسی را روی سیستم نصب می کند و سیستم عامل را راه اندازی مجدد می نماید . بعد از راه اندازی زبان فارسی به سیستم اضافه شده است.
حجم برنامه هم حدود 7 مگا بایت می باشد.

----------


## Mohammad_Mnt

@آیدا: یعنی این قدر بهم می ریزه که شما نمی تونین فارسی بنویسین؟!؟!؟ می شه Layout قبلی و فعلی کیبوردتون رو بنویسین تا ببینم چقدر تغییر کرده :)

@آرش: البته این استاندارد ویندوز است. یه استاندارد فارسی هم داریم که یه کم فرق می کنه ( و توی لینوکس استفاده شده ) ، ولی من استاندارد ویندوز رو ترجیح می دم :)

@حسن: اگه بهم کمک کنی خیلی ممنون می شم ;)

راستی، من فکر نمی کردم که به ریستارت احتیاج داشته باشه، پس باید این امکان هم اضافه کنم بهش. دیگه مشکلی نداشت ؟

----------


## arash_ebrahimi_nk

> راستی، من فکر نمی کردم که به ریستارت احتیاج داشته باشه، پس باید این امکان هم اضافه کنم بهش. دیگه مشکلی نداشت ؟


 :متعجب:  

خدا خیرت بده

----------


## arash_ebrahimi_nk

آهان یه چیزی هم در مورد استفاده از سی دی ویندوز اکس پی برای فارسی سازی بگم:

وقتی بعضی از تنظیمات زبان بهم میخوره (مثلاً توی ورد جای حروف جابجا تایپ میشه!) من برای اینکه تنظیمات مربوط به زبان به حالت اصلیش برگرده میرم یونیکد رو انگلیسی میکنم و جایی که پاسخ Yes و No میخواد من گزینه No رو انتخاب میکنم تا تنظیمات از سی دی ویندوز اکس پی نصب بشه. بعدش دوباره فارسی میکنم (با انتخاب گزینه No) اینطوری خوب میشه.

وقتی من پچ شما رو نصب کردم و سیستم رو ری استارت کردم و بعد یونیکد رو فارسی قرار دادم (با زدن گزینه Yes) نوشته های فارسی درست نشون داده نشدن. با این حال شما یه بار دقیق تست کنید این چیزی که من گفتم: اول همه رو انگلیسی کنید و اون تیک رو بردارید - اونوقت پچ خودتون رو نصب کنید و سیستم رو فارسی کنید (با زدن گزینه Yes) ببیند فارسی ها رو مثلا توی کدنویسی دلفی درست نشون میده؟

----------


## Mohammad_Mnt

> نوشته های فارسی درست نشون داده نشدن


1) کجا؟
2) پس چطوری نشون داده می شن ؟

----------


## arash_ebrahimi_nk

> 1) کجا؟
> 2) پس چطوری نشون داده می شن ؟


مثلا داخل کد نویسی دلفی
--------------------
یه نکته که نمیدونم بدرد میخوره یا نه:
فایلهایی که در داخل سی دی ویندوز اکس پی فشرده هستن رو میشه با استفاده از یه تابع خاص از حالت فشرده خارج کرد. نمیدونم این رو کجا دیدم اما میدونم که عملی هستش.

----------


## mohsenna30ri

یک تاپیک تازه در مورد فارسی کردن تاریخ ویندوز راه اندازی شده که می تونید در مورد تاریخ هجری شمسی نظرات خودتون رو مطرح کنید
https://barnamenevis.org/showthread.php?t=51484

----------


## Mohammad_Mnt

> فایلهایی که در داخل سی دی ویندوز اکس پی فشرده هستن رو میشه با استفاده از یه تابع خاص از حالت فشرده خارج کرد


با ًExpand می شه

----------


## رها

لینک دانلود برنامه آقای mohammad_mnt کار نمی کنه.
می شه دوبار یه لینک واسه دانلود بذارید.
ممنون

----------


## majid325

> فکر می کنم منظور این دوست عزیزم بعد است نصب است .
> راستی آیا راهی است که بتوان در حین نصب ویندوز و بدون پرسیدن عملیات فارسی کردن این کار و انجام داد؟؟؟
> 
> 
> فکر می کنم منظور این دوست عزیزم بعد از نصب است .
> راستی آیا راهی است که بتوان در حین نصب ویندوز و بدون پرسیدن عملیات فارسی کردن این کار و انجام داد؟؟؟


 یه ویندوز با همون مشخصات که میخوای نصب کن(فارسی ....)بعد از اون با یه نرم افزار مثل "گوست" ایمج بگیر... بعد رو هر سیستمی  که خواستی نصب کن .

----------


## Mohammad_Mnt

نسخه ی جدید با امکان *بررسی قبل از نصب* و *ریستارت
*نکته: اگه به مدت یک ماه دان لود نشه، فایل به صورت خودکار از سرور رپیدشر حذف می شه !
http://rapidshare.de/files/33305760/....2.86.rar.html

----------


## رها

slam man barname shoma dar halati ke zabane  system farsi bood nasb kardam va ba'd az restart hame chi dorost bood amma vaghti ke tanzimat e farsi dar reginal and language be kolly hazf kardam va barname shoma ro ejra kardam ba peigham khataye ke dar tasvir mibinid movajeh shodam. in payam mane' ejraye kamel e barname mishe 
man daram rooye code barname kar mikonam ama age khodetoon ham in masale ro check konid mamnoon misham
baz ham az zahmati ke mikeshid mamnoonam

----------


## رها

مشکل بالا به خاطر خواندن مقداری است که اصلاً در رجیستری ممکنه وجود نداشته باشه( مربوط به زمانی که هیچ تنظیم فارسی انجاتم نشده) که رفع شد.
اما برنامه 2 پیام دیگه موقع کپی کردن فایلها می ده که نشون می ده دوفایل زیردر پوشه مربوطه وجود ندارند ولی در آرایه موجود در برنامه نام آنها وجود داره.
agt0401.hlp
agt040D.hlp
و یه مشکل بزرگتر اینکه من برنامه رو Trace کردم همه فایلها به جز اون دوتای بالا درست کپی می شوند و تغییرات رجیستری هم اعمال می شوند اما بعد از راه اندازی مجدد سیستم هیچ کدام از تنظیمات فارسی در کنترل پنل انجام نمی شه
یه نکته دیگه من وقتی با سی دی ویندوز، تنظیمات فارسی رو انجام دادم یه سری تغییرات علاوه بر تغییراتی که برنامه شما می ده توی رجیستری مشاهده کردم که بیشتر مربوط به تیک پنل وسط هستند مثلاً اونجایی که ARABIC رو به رجیستری اضافه می کنید 4 مورد دیگه به رجیستری اضافه می شه مثل INDIAN,... شاید دلیل اینکه تیک پنل وسط در Reginal Nad Language فعال نمی شه اضافه نکردن این گزینه ها باشه.
در ضمن هنگام trace برنامه متوجه شدم قسمتی از تغییراتی که باید در رجیستری داده بشه روی کامپیوتر من انجام نمی شه مثلاً در قطعه کد زیر دستور write اجرا نمی شه

if OpenKey('S-1-5-21-515967899-113007714-682003330-1003\Keyboard Layout\Preload',True) then
  begin
        WriteString('2', '00000429');
        end
این اتفاق در چندین مورد رخ می ده که دلیلش رو نفهمیدم.

من روی کد شما کار می کنم اما اگه خودتون هم نگاهی بهش بندازید زودتر به نتیجه می رسیم
امیدوارم هرچه زودتر به نتیجه مطلوب برسیم

----------


## Mohammad_Mnt

ممنون :) چک می کنم
من اون قسمت هایی که زبان عربی و تایلندی و ... بود رو حذف کردم!! ولی فکر کنم باید دوباره برشون گردونم :)

----------


## MNosouhi

من یه ویندوز XP جدید نصب کردم و زبان فارسی رو هنگام نصب انتخاب نکردم تا بتونم برنامه شما رو تست کنم . بعد از نصب ویندوز ، برنامه شما رو اجرا و سپس یک بار هم ریست کردم ، اما هیچ کدام از تنظیمات فارسی انجام نشده بود.(البته این مال تقریبا یک ماه پیشه)
در ضمن از زحمات شما هم تشکر میکنم .

----------


## arash_ebrahimi_nk

محمد جان اگه کد رجیستری هایی که به قول دوستمون تیک وسطی رو میزنه میخوای، بگو تا بهت بدم.
ضمناً مجبور شدی دوباره کد رو کامل کن!!!!!

----------


## Mahdi_S_T

هر موقع تغییرات جدید رو اعمال کردی بگو تا نسخه جدید رو دانلود کنیم. ممنون

----------


## Mohammad_Mnt

نسخه جدید با تغییر زیاد! امیدوارم این یکی مشکل نداشته باشه
اگه مشکلی بود حتما" اطلاع بدین  :قلب: 

 لینک دریافت برنامه

----------


## Mohammad_Mnt

ویرایش جدید  :بامزه: 
SetPersian 2.1.5.117

----------


## Mahdi_S_T

چند دفعه سعی کردم دانلود کنم ولی ظاهرا مشکل داره . لطفا یه تست بکن

----------


## saeed_d

> چند دفعه سعی کردم دانلود کنم ولی ظاهرا مشکل داره . لطفا یه تست بکن


سلام
من که الان دانلودش کردم و هیچ مشکلی نبود.
آقا محمد دست شما هم درد نکنه. واقعا زحمت کشیدید. برنامه تون رو امتحان می‌کنم.

----------


## رها

ممنون از تلاشتون
اما جای حروف رو بهم می ریزه 
یعنی این مشکل قابل حل نیست؟

----------


## Mahyaa

سلام

من نصبش کردم در حالتی که قبلا فارسی ویندوز رو نصب کرده بودم . بعد از نصب ، کیبرد Arabic  جایگزین Farsi شد. یعنی تو Setting ویندوز که دیدم،  کیبورد عربی نصبه . :)

ممنون :)

----------


## Mohammad_Mnt

@ رها : این برنامه صفحه کلید *استاندارد ویندوز* رو نصب می کنه. شما از چه Layout ای استفاده می کنید ؟
@ محیا ( مهیا ) : کیبورد فارسی رو حذف کرد ؟

----------


## Mohammad_Mnt

مثل این که بعضی ها با RapidShare مشکل دارند. اگه جای دیگه سراغ دارین بگین تا Upload کنم

----------


## Mahyaa

> @ *محیا*  : کیبورد فارسی رو حذف کرد ؟


بله ! 
عربی رو جایگزین کرد  .

ممنون :)

----------


## arash_ebrahimi_nk

محمد جان - سپاسگذار زحمات بی دریغت.
اگه از دست من کمکی بر میاد در خدمتم.

----------


## رها

کیبورد من رو به arabic(102) تبدیل کرده

----------


## saeed_d

سلام
من تمام تنظیمات مربوط به فارسی رو از روی ویندوزم پاک کردم و بعد برنامه شما رو اجرا کردم . زبان فارسی رو نصب کرد ولی با Layout Arabic یعنی صفحه کلید رو با Layout عربی نصب کرد.

----------


## Mohammad_Mnt

مشکل رفع شده ! الان دارم دنبال یه جایی می گردم آپلود کنم :)

پ.ن : من توی همون رپیدشر آپلود می کنم. برای آقای سرباززاده هم فرستادم تا ایشون یه جای دیگه آپلود کنن
توجه : لینک های قبلی دیگه معتبر نیستند !

SetPersian.ver.2.2.6.124

پ.ن (2) : ممنون از همه ی کسانی که به تکمیل شدن این برنامه کمک می کنن :)

----------


## Touska

اینم لینک Mirror :

لینک دانلود

با تشکر از محمد منتظرالظهور

----------


## mzjahromi

حرکت بسیار خوبی است
موفق باشید

----------


## arash_ebrahimi_nk

چرا این تاپیک در بخش کار با کمپوننتها و ابزارها قرار گرفته؟

----------


## mzjahromi

> چرا این تاپیک در بخش کار با کمپوننتها و ابزارها قرار گرفته؟


سلام دوست عزیز
مشکل کجاست؟
پیشنهاد شما چیه؟
دلیل

----------


## Mohammad_Mnt

یه جا که همه ببینند! یا حداقل توی *مباحث مربوط به برنامه نویسی دلفی*

----------


## mzjahromi

ولی به مفهوم این بخش بیشتر میخوره

----------


## arash_ebrahimi_nk

اما برنامه مهمی هستش و قرار دادن اون در بخش اصلی دلفی کمکی به برنامه نویس هاست.

----------


## Mohammad_Mnt

درسته که این برنامه با دلفی نوشته شده ولی ربط زیادی به دلفی نداره. من فکر می کنم این جا یکی از بدترین تالارها برای این برنامه است :(

----------


## mzjahromi

با توجه به تخصصی تر شدن فروم هیچ جای دیگه واسه این تاپیک وجود نداره
قبلا یه بحث مباحث مربوط به کامپوننتها و ابزارها بود که اونم حذف شده

----------


## Mahyaa

تالار سیستم عاملها چطوره ؟ 
البته الان اون تالار هم ویندوز رو نداره ولی میشه یک کاریش کرد که بیرون از زیر تالار لینوکس قرار بگیره .

----------


## MNosouhi

این برنامه یه مشکلی داره ، اونم اینه که اگه فایل های داخل پوشه Files رو ReadOnly کنیم (مانند وقتی که برنامه رو روی سیدی رایت کنیم ) برنامه پیغام خطای File Access Denied می دهد . خطا در 
تابع ExtractBitmapedFontName و روی دستور Reset(ByteFile  رخ می دهد .
در ضمن یه پیشنهاد هم داشتم ، و اون هم اینه که به جای اینکه وقتی برنامه پیغام خطا می دهد (مثلا در کپی یک فونت) کل روند برنامه کنسل شود ، فقط در داخل مثلا یک Memo به کاربر نشان داده شود که مثلا فلان فونت کپی نشد .( نه اینکه کل برنامه کنسل شود.)
در ضمن از زحمات شما هم تشکر می کنم.

----------


## carbon

برنامه بسیار زیبایی نوشتید.
دستتون درد نکنه.
و دست جابر هم بره لای در با این آدرس دادنش که 2 ساعت گشتم این مطلب رو یافتم.

----------


## arash_ebrahimi_nk

> این برنامه یه مشکلی داره ، اونم اینه که اگه فایل های داخل پوشه Files رو ReadOnly کنیم (مانند وقتی که برنامه رو روی سیدی رایت کنیم ) برنامه پیغام خطای File Access Denied می دهد . خطا در 
> تابع ExtractBitmapedFontName و روی دستور Reset(ByteFile  رخ می دهد .
> در ضمن یه پیشنهاد هم داشتم ، و اون هم اینه که به جای اینکه وقتی برنامه پیغام خطا می دهد (مثلا در کپی یک فونت) کل روند برنامه کنسل شود ، فقط در داخل مثلا یک Memo به کاربر نشان داده شود که مثلا فلان فونت کپی نشد .( نه اینکه کل برنامه کنسل شود.)
> در ضمن از زحمات شما هم تشکر می کنم.


اون یونت رو من نوشتم. چون چنین یونیتی در هیچ جای اینترنت نبود.
نمیدونم جریان این خطا چیه؟!!
دستور Reset بمنظور آماده کردن فایل مورد استفاه قرار میگیره.
در حال حاظر سرم گرم یه برنامه دیگه هست که بزودی تمام میشه، اونوقت میام و با همکاری و کسب اجازه از محمد این برنامه رو قوی تر میکنم.

----------


## soroush_vs

کار بسیار جالب و مفیدی رو انجام دادید
تشکر و دست مریزاد
اما بنده یک مشکل کوچک دارم اینکه language Bar به ویندوز اضافه نمیشه و با کلید ها ی کیبورد (Alt+Shift) هم نمیشه بین زبانهای نصب شده Switch کرد.
چند خطی باید به رجیستری اضافه بشه.لطفا کاملترش کنید.در آن صورت برنامه بسیار بی عیبی خواهد بود.

----------


## MNosouhi

> نمیدونم جریان این خطا چیه؟!!
> دستور Reset بمنظور آماده کردن فایل مورد استفاه قرار میگیره.


من خودم اون خطاها رو برطرف کردم ، البته تغییرات زیادی ایجاد کردم که فقط مناسب کار خودم بود و نمیشد آپلودش کنم ، اینی هم که نوشتم فقط برای اطلاع دوستان بود.

----------


## Mohammad_Mnt

ممنون. من الان زیاد وقت ندارم روی این برنامه کار کنم. یکی دو ماه دیگه اگه خدا بخواهد :)

----------


## soroush_vs

من یک سری تغییرات در فایل رجیستری ایجاد کردم و تا حدی این مشکل رو برطرف کرده ولی نه کامل
در ضمن برنامه قبلی مشکل دیگه ای هم داشت اینکه برای Currency اعداد بصورت انگلیسی بودند و کلمه ی "ریال" نا خانا بود.
فایل رجیستری جدید رو میزارم.حجمش نسبت به نمونه ی قبلی زیاد تر شده و این افزایش قابل توجه است.

----------


## Mahmood_M

سلام
از زحمات و همکاری دوستان ممنونم ...
مشکلی هم که من دیدم این بود که بعد از نصب این برنامه برخی از فونتهای فارسی به صورت هندی نمایش داده می شد !

مثلا توی قسمت وارد کردن حروف توی دلفی ( مثلا Caption یک فرم یا ... ) حروف بعد از نوشتن به صورت هندی نمایش داده می شد ( حال شاید هندی نبود ولی شباهت زیادی داشت ) ...

بالاخره ذکر کردن مشکلات توی بهتر شدن کار کمک می کنه ... ( ولی در کل عالیه ، دست آقا محمد و سایر سازندگانش درد نکنه ) ...
با تشکر ...
موفق باشید ...

----------


## arash_ebrahimi_nk

سلام دوستان وقتم تا حدودی آزاد شده و همونطور که قول داده بودم میخوام رو برنامه کار کنم.
مشکلات حاظر چیا هستن؟ میشه یه نفر لیست کنه؟
راستی قبلاً تقاضا کرده بودیم که این تاپیک به قسمت اصلیه بخش دلفی انتقال پیدا کنه اما در جواب بحث *اختصاصی سازی* (کاری در جهت سهلوت دستیابی به اطلاعات) مطرح شد که کاملاً منطقی بود. با این وجود یک بار دیگه تقاظا دارم که مدیران محترم در مورد این تاپیک استثنا قائل بشن و اون رو به بخش اصلی انتقال بدن (آیا در قانون اختصاصی سازی هیچ تبصره ای وجود نداره؟)

----------


## mzjahromi

> سلام دوستان وقتم تا حدودی آزاد شده و همونطور که قول داده بودم میخوام رو برنامه کار کنم.
> مشکلات حاظر چیا هستن؟ میشه یه نفر لیست کنه؟
> راستی قبلاً تقاضا کرده بودیم که این تاپیک به قسمت اصلیه بخش دلفی انتقال پیدا کنه اما در جواب بحث *اختصاصی سازی* (کاری در جهت سهلوت دستیابی به اطلاعات) مطرح شد که کاملاً منطقی بود. با این وجود یک بار دیگه تقاظا دارم که مدیران محترم در مورد این تاپیک استثنا قائل بشن و اون رو به بخش اصلی انتقال بدن (آیا در قانون اختصاصی سازی هیچ تبصره ای وجود نداره؟)


الان یک اشاره گر هم اونجاست

----------


## arash_ebrahimi_nk

> من خودم اون خطاها رو برطرف کردم ، البته تغییرات زیادی ایجاد کردم که فقط مناسب کار خودم بود و نمیشد آپلودش کنم ، اینی هم که نوشتم فقط برای اطلاع دوستان بود.


با تشکر از شما:
اگر این برنامه برای شما مفید بوده و دوست دارین که کمکی در جهت تکمیلش بکنید کدهایی که اشکال داشتن و تعمیرشون کردین رو برای ما بذارین.




> من یک سری تغییرات در فایل رجیستری ایجاد کردم و تا حدی این مشکل رو برطرف کرده ولی نه کامل
> در ضمن برنامه قبلی مشکل دیگه ای هم داشت اینکه برای Currency اعداد بصورت انگلیسی بودند و کلمه ی "ریال" نا خانا بود.


از شما هم ممنون که اشکلات رو رفع و کدهای صحیح رو ارسال کردید.

--------------------------------------------------------------------------------------

یه اشکال جزئی در زمینه چک کردن راست به چپ بودن ویندوز داشته که اون رو برطرف کردم و 
اگه جناب MNosouhi همکاری کنن این برنامه از لحاظ کدهای داخلی تکمیل میشه.

فقط میمونه یکسری کد که از برنامه نویس یه progressbar بخواد و مواردی از این قبیل که برنامه نویس بتونه به سرعت از این کدها در برنامه استفاده کنه نظرتون در این مورد چیه؟

----------


## MNosouhi

> نوشته شده توسط soroush_vs  
> من یک سری تغییرات در فایل رجیستری ایجاد کردم و تا حدی این مشکل رو برطرف کرده ولی نه کامل
> در ضمن برنامه قبلی مشکل دیگه ای هم داشت اینکه برای Currency اعداد بصورت انگلیسی بودند و کلمه ی "ریال" نا خانا بود.
> فایل رجیستری جدید رو میزارم.حجمش نسبت به نمونه ی قبلی زیاد تر شده و این افزایش قابل توجه است.


ظاهرا فایل رجیستری که گذاشتید مشکل داره و باعث میشه که langauge Bar  از taskbar ویندوز پاک میشه و حتی با تغییر تنظیمات موجود در کنترل پنل هم برنگرده.
روی چند تا سیستم تست شده.




> یه اشکال جزئی در زمینه چک کردن راست به چپ بودن ویندوز داشته که اون رو برطرف کردم و 
> اگه جناب MNosouhi همکاری کنن این برنامه از لحاظ کدهای داخلی تکمیل میشه.


ببخشید ، الان دیدم ، اگه کمکی بتونم بکنم در خدمتم.

----------


## hex161

من یه فایل exe دارم که میتونه این زبان فارسی رو نصب کنه و تمام تنظیمات لازم رو هم انجام بده . این فارسی ساز خیلی عالیه ولی فقط یه مشکل داره . اونم اینه که باید سیستم ریست بشه . اگه بخواهید میتونم براتون بزارم تا دانلود کنید . 
من توی تمام نرم افزارام این برنامه رو میزارم . کاربر برای نصب زبان فارسی دیگه گمراه نمیشه .

----------


## arash_ebrahimi_nk

با سلام.

جناب hex161 آیا فایل اجرایی شما حاوی سورس میباشد؟ یا حداقل فایل رجیستری دارد؟
برنامه را بر روی سیستم های مختلف تست کرده اید؟

برنامه را ضمیمه کنید تا همه تست کنند - فکر میکنم رد یابی تغییرات رجیستری که از طریق یک برنامه صادر میگردد ساده تر باشد.

در ضمن دوست گرامی جناب MNosouhi چرا شما سورس های تغییر یافته توسط خودتان را ضمیمه نمیکنید؟ یا حداقل رجیستری مورد استفاده رو؟

----------


## hex161

متاسفانه سورس نیست ولی فایل ریجستری داره .
و مشخصه که با وی بی نوشته شده .
به هر حال فایل رو ضمیمه کردم .

----------


## MNosouhi

> متاسفانه سورس نیست ولی فایل ریجستری داره .
> و مشخصه که با وی بی نوشته شده .
> به هر حال فایل رو ضمیمه کردم .


ممنون.
اما یه مسئله ای رو تذکر بدم ، این برنامه همه جا درست کار نخواهد کرد ، حجم تغییراتی که باید انجام بشه بیشتر از 2 تا فایل دی ال ال و چند تغییر در رجیستری هستش.

----------


## hex161

خوبی این برنامه اینه که تنظیمات رو دورست انجام میده . برنامه ای که ارسال کردم از نظر فایلهای مورد نیاز کامل نیست . این برنامه به فایلهایی که آقای محمد لیست کردن نیاز داره . در صورتی که این فایلها در کنار این برنامه باشن ، برنامه بدرستی کار خواهد کرد .
اگر دقت کرده باشین این برنامه در حین نصب سی دی ویندوز رو از شما می خواهد که اگر فایلهایی که گفتم کنارش باشن دیگه نیاز به سی دی نداره.

----------


## Ghasem Dehghani

به نقل قول از تاپیک با آدرس زیر :
https://barnamenevis.org/showthread.php?t=70328




> بازهم سلام .
> با جستجو در قسمت دلفی مطالب جالب توجه زیادی را در این مورد پیدا کردم و در نهایت به یک برنامه تکمیل شده به نام SetPersian رسیدم که تنظیمات مربوط به رجیستری را تا حدود 90% درست انجام میداد که برای کارکرد برنامه های کاربردی ما کافی بود (یک ایراد اون ظاهر نشدن LanguageBar در قسمت Toolbar بود) , ولی در این مورد به یک مورد جالب برخورد کردم که تا حالا من و فکر کنم خیلی ها به این نکته توجه نکرده بودیم .
> در اون برنامه KBDFA.dll همون بود که پ-ژ رو اشتباه میزد من اومدم و داخل شاخه System32 اول فایل KBDFA.dll رو پاک کردم و فایل خودم رو که بالای 6 کلیوبایت رو در جای اون کپی کردم و با کمال تعجب دیدم که به محض فارسی کردن صفحه کلید و یا حتی Restart فایل من پاک شده و فایل قبلی که کمتر از 6 کیلو بود جایگزین شد . این قضیه برام مشکوک بود , این بار اومدم فایل KBDFA خودم رو جایگزین فایل KBDFA برنامه فارسی ساز کردم و برنامه فارسی ساز را روی یک ویندوز دیگه اجرا کردم ولی باز نتیجه قبلی تکرار شد . 
> این بدان معنی بود که تغییراتی که برنامه فارسی ویندوز در بخش دلفی طراحی شده بود به غیر از تغییرات رجیستری , تغییرات اعمال شده در بعضی فایل ها و یا حتی تمام فایل ها بعد از یک بار فارسی سازی و یا Restart یعنی هییییییچ!!!!!؟؟؟؟ . (برای من فایل KBDFA از اهمیت بیشتری برخوردار بود)
> همانطور که در ابتدای این تاپیک گفتم برای رفع این مشکل باید از طریق SafeMode عمل کرد و یا هنگامی که سیستم Restart شد در همون محیط Dos ابتدای بوت شدن که هنوز فایل ها مورد دسترسی ویندوز قرار نگرفته اند آنها را جایگزین کنیم .
> از طریق SafeMode که کار چندان جالبی برای برنامه نهایی نیست , حالا میخواستم بدونم چه جوری میشه در همون ابتدای بوت شدن سیستم قبل از بالا اومدن ویندوز این کار رو انجام بدیم .
> نتیجه تلاش های من در قسمت Autoexec.bat و Config.sys هم ناموفق بود .
> بک نکته دیگری که باید به اون توجه کنیم در محیط تحت Dos درایوهای NTFS رو نمی شناسه .
> لطفا بیایید همه باهم یک بار برای همیشه این مشکل را حل کنیم و در برنامه های خود از اون استفاده کنیم .
> با تشکر از همه دوستان .

----------


## arash_ebrahimi_nk

در حال حاظر یک خواسته و دو مشکل مورد بحث است:

1- میخواهید  KBDF خود را جایگزین نمایید. (لطفاً KBDF  مورد نظر را ضمیمه کنید.)

2- LanguageBar دچار مشکل میشود (و یا اینکه در قسمت Currency اعداد بصورت انگلیسی بودند و کلمه "ریال" ناخوانا است).

3- برخی از فونت های فارسی _اشاره نشده چه فونتهایی_ بصورت هندی نمایش داده میشوند.
فکر میکنم این مورد از زمانی پیش اومد که برنامه پشتیبانی از دیگر زبانهایی که همراه فارسی نصب میشدند رو لغو کرد.

یه مورد دیگه بررسی پشتیبانی از راست به چپ بودن ویندوز بوده که کُدهاش رو قرار خواهم داد.

دوستان اگر میتوانند کمکی بکنند دریغ نکنند.

----------


## arash_ebrahimi_nk

یه چیزی پیدا کردم:

یه نفر که انگلیسی خوبه و کمی وقت داره این صفحه ای که لینکش رو گذاشتم بخونه.
با چند خط کد از طریق rundll32 کل این برنامه نوشه میشه.

http://blogs.msdn.com/michkap/archiv...10/529867.aspx

یه نفر زحمت نوشتن چند خط کد رو بکشه. الان موقع امتحاناته و من فرصت کافی ندارم.

اینم طریق استفاده از rundll32 در دلفی و BCB:

----------


## hex161

دوستان من برنامه ای دارم که میتونید بواسطه اون هر فایل سیستمی از جمله KBDFA را بدون اینکه با SafeMode بالا بیایید جایگزین کنید. این برنامه کامندی هست . یعنی با ساخت یک فایل بت براحتی قابل اجراست . من توی نرم افزار فارسی ساز تک ویندوز از همین برنامه که پیشنهاد مایکروسافت بود استفاده کردم . اگه خواستین براتون ضمیمه کنم  تا دانلود کنید.

----------


## Ghasem Dehghani

با سلام .
مومن کار نیک و پرسش .
و تشکر از hex161 .

----------


## hex161

بفرمایید . اینم نرم افزار Replacer برای جابجا کردن فایلهای سیستمی ویندوز .
در ضمن با این برنامه میتونید بیشتر از یک فایل هم جابجا کنید .یه نمونه دارم پیداش میکنم و میزارمش اینجا .

----------


## پرواز

> یه ویندوز با همون مشخصات که میخوای نصب کن(فارسی ....)بعد از اون با یه نرم افزار مثل "گوست" ایمج بگیر... بعد رو هر سیستمی که خواستی نصب کن .


ایمیج گوست فقط روی سیستمی که ایمیج گرفته شده قابل اجراست.

----------


## پرواز

با سلام به همه بروبچه های دست اندردرکار این برنامه
منم مشکل دانلود دارم.

----------


## پرواز

اگه میشه نسخه آخر برنامه رو یه بار دیگه آپ کنید و یا اگه زحمتی نیست به یکی از دو ایمیل زیر بفرستید. 
parvaz_jkh@yahoo.com
jamalkhah@gmail.com
ممنون از زحمات همتون.

----------


## Mohammad_Mnt

این را ببینید‌ :
https://barnamenevis.org/showthread.php?t=71149

برای ویستا : 
https://barnamenevis.org/showpo...3&postcount=16

----------


## حسن رفیعی

من اینکار رو کردم 
ولی فقط یک اشکال کوچک داره
البته خیلی کوچک
ولی برای چند تا برنامه گذاشتم جواب داده

----------


## seyed_farid

با سلام
من اين برنامه رو دارم.
چك كنيد ببينيد چطوره؟ سورس دلفي

----------


## MohsenB

ببخشيد من وقت ندارم روش كار كنم ولي ميتونيد از نرم افزارايي مثل File Monitor و شبيه  سازهايي مثل VitualBox استفاده كنين تا ببينيد چه اعمالي در حين اين تنظيمات انجام مي شه و با دمي هم سيستم رو در يه حالت ذخيره كرد و به حالت قبل برگشت و نيز كار اول رو هم ميشه ازش فهميد.

----------


## danesh1351

ساده ترين روش:
كپي فايل kbdfa.dll مخصوص ويندوز xp در شاخه dllcash و system32 و ريست كردن ويندوز است .

----------


## technic

براي كپي كردن فايل هاي dll من يه بچ فايل درست كردم كه اين دوتا فايل كپي مي كنه فقط لازمه فايلFIX را اجرا كنيد فايل ها كپي مي كنه وسيستم ريستارت ميشه

----------


## سيد مجتبي هاشمي

> سلام به همگی
> من برنامه اش رو با دلفی نوشتم البته چون همش با رجیستری کار می کنی دلفی یا زبان دیگری نداره و بالاخره من تست کردم و الان توی چند تا برنامه هم گذاشتم و به بازار دادم هیچ مشکلی هم نداره بدین صورت کار می کنه .
> چک می کند که آیا زبان فارسی روی سیستم نصب شده یا نه البته روی سیستم عامل های 2000 و ایکس پی . در صورت عدم نصب زبان فارسی زبان فارسی را روی سیستم نصب می کند و سیستم عامل را راه اندازی مجدد می نماید . بعد از راه اندازی زبان فارسی به سیستم اضافه شده است.
> حجم برنامه هم حدود 7 مگا بایت می باشد.


آقای رفیعی اگه شما این برنامه رو نوشتین میشه اینجا بذارینش تا همه بتونن ازش استفاده کنن؟؟؟
من دقیقا به یک همچین برنامه ای نیاز دارم. ممنون میشم اگه اینجا بذارینش.

----------


## سيد مجتبي هاشمي

دوستان من هم برنامه ای رو که از اینترنت گرفتم و واقعا خوب کار میکنه رو اینجا میذارم. ا
امتحانش کنید. امیدوارم تو کامل کردن برنامه به دردتون بخوره. من نیاز به برنامه کاملی مثل این برنامه دارم، اما این برنامه چون فقط فایل اجرایی هست و باید نصب بشه و کدش همراهش نیست که بشه تو برنامه هام ازش استفاده کنم به درد نمیخوره.

اگه برنامه رو کاملتر کردین اینجا بذارینش تا ازش استفاده کنیم. ممنون.

ببخشید دوستان چون حجم برنامه زیاد هست نتونستم اینجا بذارمش. میشه راهنمایی کنید توی چه سایتی و چه طور باید آپلودش کنم؟

----------


## سيد مجتبي هاشمي

دوستان کسی نیست جواب بده؟؟؟؟؟؟؟؟؟؟؟ :متفکر:  :متفکر:  :متفکر:  :متفکر:

----------

