Eight 01
یک شنبه 13 اسفند 1391, 21:29 عصر
سلام
تابع زیر در صورتی که دکمه Shift فشرده شود ، مقدار داخل کلیپ بورد را به فایل متنی کنار برنامه اضافه می کند.
تابع ایرادی نداره و بلافاصله بعد از فشردن کلید شیفت ، دستورات ذخیره سازی اجرا میشه . مشکل اینجاست زمانی که تابع را در یک Threadجداگانه اجرا می کنم کار نمی کنه و مقدار کلیپ بورد ذخیره نمیشه.
[DllImport("User32.dll")]
private static extern short GetAsyncKeyState(System.Windows.Forms.Keys key);
private void Log()
{
string c = "";
for (; ; )
{
short state = GetAsyncKeyState(Keys.ShiftKey);
if (state == -32767)
{
string c2 = Clipboard.GetText();
if (c2 != "" && c2 != c)
{
File.AppendAllText("words.txt", c2 + "\r\n\r\n-------\r\n\r\n");
c = c2;
}
}
}
}
پروژه را هم قرار دادم.
ممنون میشم راهنمای کنید.
تابع زیر در صورتی که دکمه Shift فشرده شود ، مقدار داخل کلیپ بورد را به فایل متنی کنار برنامه اضافه می کند.
تابع ایرادی نداره و بلافاصله بعد از فشردن کلید شیفت ، دستورات ذخیره سازی اجرا میشه . مشکل اینجاست زمانی که تابع را در یک Threadجداگانه اجرا می کنم کار نمی کنه و مقدار کلیپ بورد ذخیره نمیشه.
[DllImport("User32.dll")]
private static extern short GetAsyncKeyState(System.Windows.Forms.Keys key);
private void Log()
{
string c = "";
for (; ; )
{
short state = GetAsyncKeyState(Keys.ShiftKey);
if (state == -32767)
{
string c2 = Clipboard.GetText();
if (c2 != "" && c2 != c)
{
File.AppendAllText("words.txt", c2 + "\r\n\r\n-------\r\n\r\n");
c = c2;
}
}
}
}
پروژه را هم قرار دادم.
ممنون میشم راهنمای کنید.