.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "WINDRES 1" .TH WINDRES 1 2026-08-03 binutils-2.47 "GNU Development Tools" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" windres \- دستکاری و مدیریت منابع ویندوز .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" windres [options] [input\-file] [output\-file] .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" دستور \fBwindres\fR منابع را از یک فایل ورودی می‌خواند و آن‌ها را در یک فایل خروجی کپی می‌کند. هر یک از این دو فایل می‌توانند در یکی از سه قالب زیر باشند: .ie n .IP """rc""" 4 .el .IP \f(CWrc\fR 4 .IX Item "rc" یک قالب متنی که توسط Resource Compiler خوانده می‌شود. .ie n .IP """res""" 4 .el .IP \f(CWres\fR 4 .IX Item "res" یک قالب دودویی (باینری) که توسط Resource Compiler تولید می‌شود. .ie n .IP """coff""" 4 .el .IP \f(CWcoff\fR 4 .IX Item "coff" یک شیء یا فایل اجرایی COFF. .PP توضیحات دقیق این قالب‌های گوناگون در مستندات مایکروسافت در دسترس است. .PP هنگامی که \fBwindres\fR از قالب \f(CW\*(C`rc\*(C'\fR به قالب \f(CW\*(C`res\*(C'\fR تبدیل انجام می‌دهد، رفتاری همانند Windows Resource Compiler دارد. هنگامی که \&\fBwindres\fR از قالب \f(CW\*(C`res\*(C'\fR به قالب \f(CW\*(C`coff\*(C'\fR تبدیل می‌کند، رفتاری همانند برنامهٔ \f(CW\*(C`CVTRES\*(C'\fR ویندوز دارد. .PP هنگامی که \fBwindres\fR یک فایل \f(CW\*(C`rc\*(C'\fR تولید می‌کند، خروجی مشابه اما نه دقیقاً یکسان با قالبی است که برای ورودی انتظار می‌رود. زمانی که یک فایل ورودی \f(CW\*(C`rc\*(C'\fR به یک نام فایل خارجی ارجاع می‌دهد، فایل خروجی \f(CW\*(C`rc\*(C'\fR در عوض شامل محتویات آن فایل خواهد بود. .PP اگر قالب ورودی یا خروجی مشخص نشده باشد، \fBwindres\fR آن را بر اساس نام فایل، یا برای فایل ورودی، بر اساس محتویات فایل حدس خواهد زد. فایلی با پسوند \fI.rc\fR به عنوان یک فایل \f(CW\*(C`rc\*(C'\fR در نظر گرفته می‌شود، فایلی با پسوند \fI.res\fR به عنوان یک فایل \f(CW\*(C`res\*(C'\fR تلقی می‌شود، و فایلی با پسوند \fI.o\fR یا \fI.exe\fR به عنوان یک فایل \f(CW\*(C`coff\*(C'\fR در نظر گرفته خواهد شد. .PP اگر هیچ فایل خروجی مشخص نشده باشد، \fBwindres\fR منابع را با قالب \f(CW\*(C`rc\*(C'\fR در خروجی استاندارد چاپ خواهد کرد. .PP کاربرد متداول این است که شما یک فایل \f(CW\*(C`rc\*(C'\fR می‌نویسید، از \fBwindres\fR برای تبدیل آن به یک فایل شیء COFF استفاده می‌کنید، و سپس فایل COFF را در برنامهٔ خود پیوند (link) می‌دهید. این عمل منابع شرح داده شده در فایل \&\f(CW\*(C`rc\*(C'\fR را در ویندوز در دسترس قرار می‌دهد. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP "\fB\-i\fR \fIfilename\fR" 4 .IX Item "-i filename" .PD 0 .IP "\fB\-\-input\fR \fIfilename\fR" 4 .IX Item "--input filename" .PD نام فایل ورودی. اگر از این گزینه استفاده نشود، آن‌گاه \fBwindres\fR از نخستین آرگومان غیرگزینه‌ای به عنوان نام فایل ورودی استفاده خواهد کرد. اگر هیچ آرگومان غیرگزینه‌ای وجود نداشته باشد، \fBwindres\fR از ورودی استاندارد خواهد خواند. \fBwindres\fR نمی‌تواند یک فایل COFF را از ورودی استاندارد بخواند. .IP "\fB\-o\fR \fIfilename\fR" 4 .IX Item "-o filename" .PD 0 .IP "\fB\-\-output\fR \fIfilename\fR" 4 .IX Item "--output filename" .PD نام فایل خروجی. اگر از این گزینه استفاده نشود، آن‌گاه \fBwindres\fR از نخستین آرگومان غیرگزینه‌ای پس از هر آرگومانی که برای فایل ورودی به کار رفته، به عنوان نام فایل خروجی استفاده خواهد کرد. اگر هیچ آرگومان غیرگزینه‌ای وجود نداشته باشد، \fBwindres\fR در خروجی استاندارد خواهد نوشت. \&\fBwindres\fR نمی‌تواند یک فایل COFF را در خروجی استاندارد بنویسد. توجه داشته باشید که برای سازگاری با \fBrc\fR گزینهٔ \fB\-fo\fR نیز پذیرفته می‌شود، اما استفاده از آن توصیه نمی‌شود. .IP "\fB\-J\fR \fIformat\fR" 4 .IX Item "-J format" .PD 0 .IP "\fB\-\-input\-format\fR \fIformat\fR" 4 .IX Item "--input-format format" .PD قالب ورودی جهت خواندن. مقدار \fIformat\fR می‌تواند \fBres\fR، \fBrc\fR یا \fBcoff\fR باشد. اگر هیچ قالب ورودی مشخص نشود، \fBwindres\fR همان‌طور که در بالا توضیح داده شد، آن را حدس خواهد زد. .IP "\fB\-O\fR \fIformat\fR" 4 .IX Item "-O format" .PD 0 .IP "\fB\-\-output\-format\fR \fIformat\fR" 4 .IX Item "--output-format format" .PD قالب خروجی جهت تولید. مقدار \fIformat\fR می‌تواند \fBres\fR، \&\fBrc\fR یا \fBcoff\fR باشد. اگر هیچ قالب خروجی مشخص نشود، \&\fBwindres\fR همان‌طور که در بالا توضیح داده شد، آن را حدس خواهد زد. .IP "\fB\-F\fR \fItarget\fR" 4 .IX Item "-F target" .PD 0 .IP "\fB\-\-target\fR \fItarget\fR" 4 .IX Item "--target target" .PD مشخص کردن قالب BFD برای استفاده به عنوان فایل ورودی یا خروجی COFF. این یک نام هدف در BFD است؛ می‌توانید از گزینهٔ \fB\-\-help\fR برای دیدن فهرستی از هدف‌های پشتیبانی‌شده استفاده کنید. به طور معمول \fBwindres\fR از قالب پیش‌فرض استفاده می‌کند که نخستین مورد فهرست‌شده توسط گزینهٔ \fB\-\-help\fR است. .IP "\fB\-\-preprocessor\fR \fIprogram\fR" 4 .IX Item "--preprocessor program" هنگامی که \fBwindres\fR یک فایل \f(CW\*(C`rc\*(C'\fR را می‌خواند، ابتدا آن را از طریق پیش‌پردازندهٔ C اجرا می‌کند. از این گزینه می‌توان برای مشخص کردن پیش‌پردازندهٔ مورد استفاده بهره گرفت. پیش‌پردازندهٔ پیش‌فرض \f(CW\*(C`gcc\*(C'\fR است. .IP "\fB\-\-preprocessor\-arg\fR \fIoption\fR" 4 .IX Item "--preprocessor-arg option" هنگامی که \fBwindres\fR یک فایل \f(CW\*(C`rc\*(C'\fR را می‌خواند، ابتدا آن را از طریق پیش‌پردازندهٔ C اجرا می‌کند. این گزینه می‌تواند برای تعیین متن اضافی جهت ارسال به خط فرمان پیش‌پردازنده به کار رود. این گزینه می‌تواند چندین بار برای افزودن چندین گزینه به خط فرمان پیش‌پردازنده استفاده شود. اگر گزینهٔ \fB\-\-preprocessor\fR مشخص نشده باشد، مجموعه‌ای از آرگومان‌های پیش‌فرض برای پیش‌پردازنده استفاده خواهند شد و هر گزینهٔ \fB\-\-preprocessor\-arg\fR بعد از آن‌ها در خط فرمان قرار می‌گیرد. این آرگومان‌های پیش‌فرض عبارتند از \f(CW\*(C`\-E\*(C'\fR، \&\f(CW\*(C`\-xc\-header\*(C'\fR و \f(CW\*(C`\-DRC_INVOKED\*(C'\fR. .IP "\fB\-I\fR \fIdirectory\fR" 4 .IX Item "-I directory" .PD 0 .IP "\fB\-\-include\-dir\fR \fIdirectory\fR" 4 .IX Item "--include-dir directory" .PD مشخص کردن یک دایرکتوری include جهت استفاده هنگام خواندن فایل \f(CW\*(C`rc\*(C'\fR. دستور \fBwindres\fR این مسیر را به عنوان یک گزینهٔ \fB\-I\fR به پیش‌پردازنده منتقل می‌کند. \fBwindres\fR همچنین این دایرکتوری را هنگام جستجوی فایل‌های نام‌برده‌شده در فایل \f(CW\*(C`rc\*(C'\fR بررسی می‌کند. اگر آرگومان ارائه‌شده به این گزینه با هر یک از قالب‌های پشتیبانی‌شده (\fIformat\fRها، همان‌طور که در گزینهٔ \fB\-J\fR توضیح داده شد) هم‌خوانی داشته باشد، یک هشدار منسوخ‌شدگی صادر می‌کند و دقیقاً مانند گزینهٔ \fB\-J\fR رفتار خواهد کرد. برنامه‌های جدید نباید از این رفتار استفاده کنند. اگر نام یک دایرکتوری بر حسب اتفاق با یک \fIformat\fR مطابقت داشت، برای غیرفعال کردن این سازگاری با گذشته، کافی است پیشوند \fB./\fR را به آن اضافه کنید. .IP "\fB\-D\fR \fItarget\fR" 4 .IX Item "-D target" .PD 0 .IP "\fB\-\-define\fR \fIsym\fR\fB[=\fR\fIval\fR\fB]\fR" 4 .IX Item "--define sym[=val]" .PD مشخص کردن یک گزینهٔ \fB\-D\fR جهت ارسال به پیش‌پردازنده هنگام خواندن یک فایل \f(CW\*(C`rc\*(C'\fR. .IP "\fB\-U\fR \fItarget\fR" 4 .IX Item "-U target" .PD 0 .IP "\fB\-\-undefine\fR \fIsym\fR" 4 .IX Item "--undefine sym" .PD مشخص کردن یک گزینهٔ \fB\-U\fR جهت ارسال به پیش‌پردازنده هنگام خواندن یک فایل \f(CW\*(C`rc\*(C'\fR. .IP \fB\-r\fR 4 .IX Item "-r" برای سازگاری با rc نادیده گرفته می‌شود. .IP \fB\-v\fR 4 .IX Item "-v" فعال‌سازی حالت پرگو (verbose). این گزینه در صورتی که پیش‌پردازنده‌ای را مشخص نکرده باشید، به شما نشان می‌دهد چه پیش‌پردازنده‌ای استفاده شده است. .IP "\fB\-c\fR \fIval\fR" 4 .IX Item "-c val" .PD 0 .IP "\fB\-\-codepage\fR \fIval\fR" 4 .IX Item "--codepage val" .PD مشخص کردن کدپیج (codepage) پیش‌فرض جهت استفاده هنگام خواندن فایل \f(CW\*(C`rc\*(C'\fR. مقدار \fIval\fR باید یک کد هگزادسیمال با پیشوند \fB0x\fR یا یک کد ده‌دهی کدپیج باشد. محدودهٔ معتبر از صفر تا 0xffff است، اما معتبر بودن کدپیج به سیستم میزبان و پیکربندی وابسته است. .IP "\fB\-l\fR \fIval\fR" 4 .IX Item "-l val" .PD 0 .IP "\fB\-\-language\fR \fIval\fR" 4 .IX Item "--language val" .PD مشخص کردن زبان پیش‌فرض جهت استفاده هنگام خواندن یک فایل \f(CW\*(C`rc\*(C'\fR. مقدار \fIval\fR باید یک کد زبان هگزادسیمال باشد. هشت بیت پایین زبان، و هشت بیت بالا زیرزبان (sublanguage) را مشخص می‌کنند. .IP \fB\-\-use\-temp\-file\fR 4 .IX Item "--use-temp-file" استفاده از یک فایل موقت به‌جای استفاده از popen برای خواندن خروجی پیش‌پردازنده. اگر پیاده‌سازی popen در سیستم میزبان دارای باگ است از این گزینه استفاده کنید (به عنوان مثال، نسخه‌های غیرانگلیسی خاصی از Windows 95 و Windows 98 دارای پیاده‌سازی معیوب popen هستند که در آن‌ها خروجی به جای لوله، به کنسول هدایت می‌شود). .IP \fB\-\-no\-use\-temp\-file\fR 4 .IX Item "--no-use-temp-file" استفاده از popen و نه یک فایل موقت، برای خواندن خروجی پیش‌پردازنده. این رفتار پیش‌فرض است. .IP \fB\-h\fR 4 .IX Item "-h" .PD 0 .IP \fB\-\-help\fR 4 .IX Item "--help" .PD نمایش خلاصه‌ای از نحوهٔ استفاده از دستور. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD نمایش شماره نسخهٔ \fBwindres\fR. .IP \fB\-\-yydebug\fR 4 .IX Item "--yydebug" اگر \fBwindres\fR با تعریف \f(CW\*(C`YYDEBUG\*(C'\fR به عنوان \f(CW1\fR کامپایل شده باشد، این گزینه اشکال‌زدایی تجزیه‌کننده (parser debugging) را فعال می‌کند. .IP \fB@\fR\fIfile\fR 4 .IX Item "@file" خواندن گزینه‌های خط فرمان از \fIfile\fR. گزینه‌های خوانده‌شده به جای گزینهٔ اصلی @\fIfile\fR درج می‌شوند. اگر \fIfile\fR وجود نداشته باشد، یا نتوان آن را خواند، با گزینه به صورت لفظی (عینی) برخورد می‌شود و حذف نخواهد شد. .Sp گزینه‌ها در \fIfile\fR با نویسه‌های فاصله خالی (whitespace) از یکدیگر جدا می‌شوند. یک نویسهٔ فاصله می‌تواند با محصور کردن کل گزینه در گیومه‌های تکی یا جفتی درون یک گزینه قرار گیرد. هر نویسه‌ای (از جمله بک‌اسلش) می‌تواند با قرار دادن پیشوند بک‌اسلش قبل از نویسهٔ مورد نظر درج شود. خود فایل \fIfile\fR می‌تواند شامل گزینه‌های بیشتری به صورت @\fIfile\fR باشد؛ این گونه گزینه‌ها به صورت بازگشتی پردازش خواهند شد. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" مدخل‌های Info برای \fIbinutils\fR. .SH "کپی‌رایت و تکثیر (COPYRIGHT)" .IX Header "COPYRIGHT" حق نشر (c) 1991\-2026 متعلق به Free Software Foundation, Inc. است. .PP اجازهٔ کپی، توزیع و/یا تغییر این سند تحت شرایط مجوز مستندات آزاد گنو (GNU Free Documentation License)، نسخهٔ 1.3 یا هر نسخهٔ بعدی منتشرشده توسط بنیاد نرم‌افزارهای آزاد (Free Software Foundation) داده می‌شود؛ بدون بخش‌های تغییرناپذیر، بدون متون روی جلد، و بدون متون پشت جلد. یک رونوشت از این مجوز در بخش موسوم به «GNU Free Documentation License» گنجانده شده است.