PDA

نسخه کامل مشاهده نسخه کامل : مشکل باز کردن فایلی که در مسیر و یا نامش حرف ی استفاده شده باشد



ah_fathi
21-06-2006, 08:45
سلام دوستان
مشکل : اگر در نام فایل یا مسیر فایل حرف ی فارسی (unicode 1740) (تایپ حرف D در ویندوز xp) استفاده شود ، دلفی به هیچ عنوان توانایی تشخیص فایل فوق را ندارد و خطای invalid file name را می دهد.
برای رفع این مشکل از کامپوننتهای TNT نیز استفاده کردم تا wideString ها را به راحتی ساپورت کند ولی باز هم موفق به باز کردن فایل نشدم.
از apiهای باز کردن فایل به صورت مستقیم که Unicode را ساپورت می کند نیز استفاده کردم ولی باز هم با خطا مواجه شدم.
خلاصه از کسی که با این مشکل مواجه شده و رفعش کرده خواهش می کنم من را یاری کند.

soldier
21-06-2006, 12:26
سلام
این یه مشکلی است که ربطی به دلفی نداره
بلکه خود ویندوز XP این مشکل رو داره به علت Uncode
حالا تو می تونی از Shift+X اما به فارسی ی می شه
امتحان کن ببین اگر درست شد همین جا بگو تا
دوستان دیگر که با این مشکل مواجه شدند با این تاپیک
مشکل برطرف شود.
اگر هم درست نشد Office XP رو نصب کن.فكر كنم درست شه.

ah_fathi
21-06-2006, 13:36
سلام دوست عزيز
از راهنماييت ممنونم ولي مشكل فوق با روشي كه گفتيد حل نمي شود چون من كه نمي خواهم اسم فايل را خودم عوض كنم وگرنه هرچيزي مانند ي و حروف ديگر فارسي-چيني و 000 را مي شود جايگزينش كرد و فايل را اوپن كرد.

NoneForce
21-06-2006, 14:43
سلام
ميشه بيشتر توضيح بدهيد.
به چه دستوري اون فايل را باز مي كنيد؟
من يك فولدر ساختم به اسم "بيست" بعد توش يك عكس گذاشتم و با يك دايلوگ اون باز كردم. مشكلي نداشت!
مسير فايل را در كد تعريف مي كنيد؟

ah_fathi
22-06-2006, 10:20
سلام دوست عزيزم
ممنونم از جوابت
من به همه شيوه هايي كه با فايل مي شود كار كنم كار كردم ولي بازهم مشكل دارد
بعنوان مثال :

procedure TForm1.Button1Click(Sender: TObject);
var
f:textfile;
begin

if OpenDialog1.Execute then
begin
assignfile(f,OpenDialog1.FileName);
reset(f);
end;

end;

کد را در دلفی 7 و ویندوز اکس پی تست کن
بازهم تشکر

NoneForce
22-06-2006, 10:29
سلام
مشكل عجيبي است! چون اينجا هيچ خطايي رخ نمي دهد . هم اسم پوشه داراي ي است و هم اسم فايل ولي بدون خطا ميخواند و مي نويسد.

soldier
22-06-2006, 10:50
سلام
درسته کار نمی کنه نمی دونم چطور NoneForce می گه
که مشکلی نداسته.من امتحان کردم و باز هم می گم که
مشکل از دلفی و برنامه شما نیست مشکل از Uncode ویندوز XP
چون می خواستم همون عکس رو با Acdsee باز کنم نمی شد
و برنامه اتوماتیک به سرعت Close می شد پس مشکل از شما نیست
می تونید توی هلپ برنامتون این مسئله رو ذکر کنید

ah_fathi
22-06-2006, 10:54
سلام دوباره
شما احتمالا از ي(عربی)(shift+x) استفاده می کنید این ي جواب می دهد ولی ی فارسی(دکمه d) جواب نمی دهد

ah_fathi
22-06-2006, 11:03
یک نکته وجود دارد، خود ویندوز برای انجام عملهای کپی،حذف مشکلی با این فایلها ندارد پس بنابراین از یک تکنیکی استفاده می کند که اینگونه فایلها را تشخیص می دهد .

soldier
22-06-2006, 12:21
سلام
خوب ويندوز XP فقط اين رو Support مي كنه
بايد يه فكر يه Uncode باشيم كه دلفي بتونه ساپرتش كنه.
هر كي تونست همچين اينكدي رو پيدا كنه
همين جا لينك براي دانلود بذاريه.