PDA

View Full Version : سوال: استفاده از توابع API در #C



sorena2000
سه شنبه 17 آبان 1390, 09:51 صبح
سلام به همه دوستان
من برای نوشتن یک برنامه با توابع API به مشکل بر خوردم .
باید mose properties کنترل پنل رو با استفاده از توابع API درست کنم اما متاسفانه هر چی گشتم توابع مرتبط به اون رو نتونستم پیدا کنم تنها تابعی که ازش پیدا کردم تغییر کلیک موس هست .
از دوستان و استادان عزیز خواهش می کنم در صورت امکان تابع یا برنامه مشابهی رو برام بذارید .

قسمت buttons , pointer option رو نیاز دارم
با تشکر....

sorena2000
یک شنبه 29 آبان 1390, 15:10 عصر
خودم پیداش کردم
کدش رو می زارم برای دوستان هر کی می خواست استفاده کنه.
مقادیری هم که می گیره از 1 تا 20 هستش .

[DllImport("user32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
staticexternbool SystemParametersInfo(API.SPI uiAction, uint uiParam, uint pvParam, API.SPIF fWinIni);



در قسمت textbox یا trackBar بسته به کارتون این کد رو قرار بدین


SystemParametersInfo(API.SPI. , 0, System.Convert.ToUInt32(trackBar2.Value), API.SPIF.SPIF_UPDATEINIFILE | API.SPIF.SPIF_SENDWININICHANGE | API.SPIF.SPIF_SENDCHANGE);


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




publicstaticclassAPI
{
#region SPI
 
 
[Description("SPI_(System-wide parameter - Used in SystemParametersInfo function )")]
publicenumSPI : uint
{

SPI_GETMOUSESPEED = 0x0070,

SPI_SETMOUSESPEED = 0x0071,
}
[Flags]
public enum SPIF
{
None = 0x00,
/// <summary>Writes the new system-wide parameter setting to the user profile.</summary>
SPIF_UPDATEINIFILE = 0x01,
/// <summary>Broadcasts the WM_SETTINGCHANGE message after updating the user profile.</summary>
SPIF_SENDCHANGE = 0x02,
/// <summary>Same as SPIF_SENDCHANGE.</summary>
SPIF_SENDWININICHANGE = 0x02
}
}




موفق باشید

Hybrid
یک شنبه 29 آبان 1390, 15:14 عصر
سلام دوست عزیز نمیتونم کد رو ببینم !!!! دوباره پیست کن ببینم چی میشه...

saieh_star
چهارشنبه 16 آذر 1390, 11:01 صبح
سلام من میخواستم توابع api صدا رو پیاده سازی کنم می خواستم بهم کمک کنید

سوداگر
چهارشنبه 16 آذر 1390, 11:24 صبح
سلام من میخواستم توابع api صدا رو پیاده سازی کنم می خواستم بهم کمک کنید

پسری ام! بالاخره یاد گرفتم توی این سایت جستجو کنم! (http://barnamenevis.org/search.php?searchid=435137)
ولی بهترینش این لیییییینکه (http://barnamenevis.org/showthread.php?291691-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%AA%D9%88%D8%A7%D8%A8%D8%B9-API-%D8%AF%D8%B1-C&highlight=api)

soltan-mohammadi
چهارشنبه 16 آذر 1390, 18:31 عصر
کسی می دونه که چه جوری میشه با توابع api شکلکهای ویندوز مثلا شکلک سگ جستوجوگرش رو در فرم سی شارپ آورد ؟

سوداگر
پنج شنبه 17 آذر 1390, 12:12 عصر
آموزش کار با msagent (http://www.codeproject.com/KB/cs/usemsagentcsharp.aspx)
یک پروژه با msagent (http://www.codeproject.com/KB/graphics/csharpSapiwithAgent.aspx)
اما توجه کنید که msagent روی ویندوز XP هست و برای استفاده از اون توی 7 باید از سایت مایکروسافت دانلودش کنید که به طور پیش فرض از merlin استفاده میکنه ولی برای استفاده از این غول! باید اون رو هم جداگانه نصب کنید:
http://www.codeproject.com/KB/graphics/csharpSapiwithAgent/topimage2.jpg

soltan-mohammadi
پنج شنبه 17 آذر 1390, 22:37 عصر
من هنوز نفهمیدم من باید یه پروژه تا شنبه تحویل بدم . می شه همون مرلین رو در ویندوز 7 بگین

سوداگر
جمعه 18 آذر 1390, 15:00 عصر
ای ول که جواب من رو دادین مچکرم .........................:گریه:
راستش رو بخوای این برنامه رو با VB.Net و برای ویندوز XP نوشته بودم و خواستم ضمیمه کنم، نشد. (شما هم بهتر بود یه تاپیک جداگانه برای استفاده از مرلین و ... میزدی و این تاپیک، سوال در سوال نمیشد:گیج:)
این برنامه ای رو که ضمیمه میکنم با VB.Net نوشته شده و اگه لینک بالا رو خونده باشی به راحتی میتونی 15 دقیقه ای به #C تبدیلش کنی.

قبل از استفاده از برنامه زیر باید روی ویندوز7 مرلین رو Download (http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=6936)و نصب کنی.

mmd2009
چهارشنبه 30 آذر 1390, 01:24 صبح
با سلام

این تاپیک به صورت اشتباه پاک شد. لطفا در صورت مشاهده چنین مواردی گزارش کنید.

موفق باشید