بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
البحث في الموقع
Showing results for tags 'ms access'.
تم العثور علي 15 نتائج
-
مرحبا القصة هي: كنت بحاجة إلى أحد برامجي القديمة التي كنت بحاجة إلى استخدامها في تطبيقي الجديد. أدركت أنني نسيت رمز بيئة ترميز VBA في MS Access! كانت القصة فظيعة بعد المراجعة ، أدركت أنني فقدت الملف الذي يحتوي على كلمات المرور. الآن أحتاج إلى مساعدة لفتح كلمة المرور.
-
السلام عليكم ورحمة الله وبركاته.. اقدم لكم اداة صغيرة من برمجتي وضيفتها تغيير اسم الدولة/المنطقة التي تعتمد عليها الكثير من البرامج خصوصاً العربية التي تعتمد الـ Unicode الأداة مكتوب بلغة Visual Studio .NET مبدأ عملها يحتاج ان تقوم بتمرير براميتر لها يحتوي على كود الدولة. عموما كتبت لكم مثال في الاكسس سورس الأداة: Imports System.Runtime.InteropServices Imports System.Threading Imports Microsoft.Win32 Imports System.Globalization Module Main 'C0ded bY: SEMO.Pa3x (: 'Date: 27-5-2021 : 03:26 PM Const subkey As String = "SYSTEM\CurrentControlSet\Control\Nls\Language\" Dim CodeArray As String() = {"af-ZA", "ar-AE", "ar-BH", "ar-DZ", "ar-EG", "ar-IQ", "ar-JO", "ar-KW", "ar-LB", "ar-LY", "ar-MA", "ar-OM", "ar-QA", "ar-SA", "ar-SY", "ar-TN", "ar-YE", "az-AZ", "az-AZ", "be-BY", "bg-BG", "bs-BA", "ca-ES", "cs-CZ", "cy-GB", "da-DK", "de-AT", "de-CH", "de-DE", "de-LI", "de-LU", "dv-MV", "el-GR", "en-AU", "en-BZ", "en-CA", "en-CB", "en-GB", "en-IE", "en-JM", "en-NZ", "en-PH", "en-TT", "en-US", "en-ZA", "en-ZW", "es-AR", "es-BO", "es-CL", "es-CO", "es-CR", "es-DO", "es-EC", "es-ES", "es-ES", "es-GT", "es-HN", "es-MX", "es-NI", "es-PA", "es-PE", "es-PR", "es-PY", "es-SV", "es-UY", "es-VE", "et-EE", "eu-ES", "fa-IR", "fi-FI", "fo-FO", "fr-BE", "fr-CA", "fr-CH", "fr-FR", "fr-LU", "fr-MC", "gl-ES", "gu-IN", "he-IL", "hi-IN", "hr-BA", "hr-HR", "hu-HU", "hy-AM", "id-ID", "is-IS", "it-CH", "it-IT", "ja-JP", "ka-GE", "kk-KZ", "kn-IN", "ko-KR", "kok-IN", "ky-KG", "lt-LT", "lv-LV", "mi-NZ", "mk-MK", "mn-MN", "mr-IN", "ms-BN", "ms-MY", "mt-MT", "nb-NO", "nl-BE", "nl-NL", "nn-NO", "ns-ZA", "pa-IN", "pl-PL", "ps-AR", "pt-BR", "pt-PT", "qu-BO", "qu-EC", "qu-PE", "ro-RO", "ru-RU", "sa-IN", "se-FI", "se-FI", "se-FI", "se-NO", "se-NO", "se-NO", "se-SE", "se-SE", "se-SE", "sk-SK", "sl-SI", "sq-AL", "sr-BA", "sr-BA", "sr-SP", "sr-SP", "sv-FI", "sv-SE", "sw-KE", "syr-SY", "ta-IN", "te-IN", "th-TH", "tl-PH", "tn-ZA", "tr-TR", "tt-RU", "uk-UA", "ur-PK", "uz-UZ", "uz-UZ", "vi-VN", "xh-ZA", "zh-CN", "zh-HK", "zh-MO", "zh-SG", "zh-TW", "zu-ZA"} Sub main() For Each arg As String In My.Application.CommandLineArgs 'check if arg exist in array ! Dim index As Integer = Array.IndexOf(CodeArray, arg) If index > 0 Then 'do change (: SetSystemNonUnicodeLanguage(CultureInfo.GetCultureInfo(arg)) End If Next End Sub Private Sub SetSystemNonUnicodeLanguage(ByVal cinfo As CultureInfo) Dim regkey = Registry.LocalMachine.OpenSubKey(subkey, True) regkey.SetValue("Default", cinfo.LCID.ToString("x4")) ' Reboot computer after timeout of 5 Shell("Shutdown -r -t 5") ' Switches: ' -l Log off profile ' -s Shut down computer ' -r Restart computer ' -f Force applications to close ' -t Set a timeout for shutdownCodeArray ' -m \\computer name (Shutdown remote computer) ' -i Show the Shutdown GUI End Sub End Module البرنامج: Option Compare Database Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Const SW_SHOWNORMAL = 1 Private Sub cmd_change_Click() Dim SetLocaleInfo_File As String Dim Parameters As String SetLocaleInfo_File = CurrentProject.Path + "\SetLocaleInfo.exe" Parameters = comb_countries ShellExecute 0, "runas", SetLocaleInfo_File, Parameters, vbNullString, SW_SHOWNORMAL End Sub ارفقت لكم جدول لإسماء الدولة ورموزها: Code Country af-ZA Afrikaans (South Africa) ar-AE Arabic (U.A.E.) ar-BH Arabic (Bahrain) ar-DZ Arabic (Algeria) ar-EG Arabic (Egypt) ar-IQ Arabic (Iraq) ar-JO Arabic (Jordan) ar-KW Arabic (Kuwait) ar-LB Arabic (Lebanon) ar-LY Arabic (Libya) ar-MA Arabic (Morocco) ar-OM Arabic (Oman) ar-QA Arabic (Qatar) ar-SA Arabic (Saudi Arabia) ar-SY Arabic (Syria) ar-TN Arabic (Tunisia) ar-YE Arabic (Yemen) az-AZ Azeri (Latin) (Azerbaijan) az-AZ Azeri (Cyrillic) (Azerbaijan) be-BY Belarusian (Belarus) bg-BG Bulgarian (Bulgaria) bs-BA Bosnian (Bosnia and Herzegovina) ca-ES Catalan (Spain) cs-CZ Czech (Czech Republic) cy-GB Welsh (United Kingdom) da-DK Danish (Denmark) de-AT German (Austria) de-CH German (Switzerland) de-DE German (Germany) de-LI German (Liechtenstein) de-LU German (Luxembourg) dv-MV Divehi (Maldives) el-GR Greek (Greece) en-AU English (Australia) en-BZ English (Belize) en-CA English (Canada) en-CB English (Caribbean) en-GB English (United Kingdom) en-IE English (Ireland) en-JM English (Jamaica) en-NZ English (New Zealand) en-PH English (Republic of the Philippines) en-TT English (Trinidad and Tobago) en-US English (United States) en-ZA English (South Africa) en-ZW English (Zimbabwe) es-AR Spanish (Argentina) es-BO Spanish (Bolivia) es-CL Spanish (Chile) es-CO Spanish (Colombia) es-CR Spanish (Costa Rica) es-DO Spanish (Dominican Republic) es-EC Spanish (Ecuador) es-ES Spanish (Castilian) es-ES Spanish (Spain) es-GT Spanish (Guatemala) es-HN Spanish (Honduras) es-MX Spanish (Mexico) es-NI Spanish (Nicaragua) es-PA Spanish (Panama) es-PE Spanish (Peru) es-PR Spanish (Puerto Rico) es-PY Spanish (Paraguay) es-SV Spanish (El Salvador) es-UY Spanish (Uruguay) es-VE Spanish (Venezuela) et-EE Estonian (Estonia) eu-ES Basque (Spain) fa-IR Farsi (Iran) fi-FI Finnish (Finland) fo-FO Faroese (Faroe Islands) fr-BE French (Belgium) fr-CA French (Canada) fr-CH French (Switzerland) fr-FR French (France) fr-LU French (Luxembourg) fr-MC French (Principality of Monaco) gl-ES Galician (Spain) gu-IN Gujarati (India) he-IL Hebrew (Israel) hi-IN Hindi (India) hr-BA Croatian (Bosnia and Herzegovina) hr-HR Croatian (Croatia) hu-HU Hungarian (Hungary) hy-AM Armenian (Armenia) id-ID Indonesian (Indonesia) is-IS Icelandic (Iceland) it-CH Italian (Switzerland) it-IT Italian (Italy) ja-JP Japanese (Japan) ka-GE Georgian (Georgia) kk-KZ Kazakh (Kazakhstan) kn-IN Kannada (India) ko-KR Korean (Korea) kok-IN Konkani (India) ky-KG Kyrgyz (Kyrgyzstan) lt-LT Lithuanian (Lithuania) lv-LV Latvian (Latvia) mi-NZ Maori (New Zealand) mk-MK FYRO Macedonian (Former Yugoslav Republic of Macedonia) mn-MN Mongolian (Mongolia) mr-IN Marathi (India) ms-BN Malay (Brunei Darussalam) ms-MY Malay (Malaysia) mt-MT Maltese (Malta) nb-NO Norwegian (Bokm?l) (Norway) nl-BE Dutch (Belgium) nl-NL Dutch (Netherlands) nn-NO Norwegian (Nynorsk) (Norway) ns-ZA Northern Sotho (South Africa) pa-IN Punjabi (India) pl-PL Polish (Poland) ps-AR Pashto (Afghanistan) pt-BR Portuguese (Brazil) pt-PT Portuguese (Portugal) qu-BO Quechua (Bolivia) qu-EC Quechua (Ecuador) qu-PE Quechua (Peru) ro-RO Romanian (Romania) ru-RU Russian (Russia) sa-IN Sanskrit (India) se-FI Sami (Northern) (Finland) se-FI Sami (Skolt) (Finland) se-FI Sami (Inari) (Finland) se-NO Sami (Northern) (Norway) se-NO Sami (Lule) (Norway) se-NO Sami (Southern) (Norway) se-SE Sami (Northern) (Sweden) se-SE Sami (Lule) (Sweden) se-SE Sami (Southern) (Sweden) sk-SK Slovak (Slovakia) sl-SI Slovenian (Slovenia) sq-AL Albanian (Albania) sr-BA Serbian (Latin) (Bosnia and Herzegovina) sr-BA Serbian (Cyrillic) (Bosnia and Herzegovina) sr-SP Serbian (Latin) (Serbia and Montenegro) sr-SP Serbian (Cyrillic) (Serbia and Montenegro) sv-FI Swedish (Finland) sv-SE Swedish (Sweden) sw-KE Swahili (Kenya) syr-SY Syriac (Syria) ta-IN Tamil (India) te-IN Telugu (India) th-TH Thai (Thailand) tl-PH Tagalog (Philippines) tn-ZA Tswana (South Africa) tr-TR Turkish (Turkey) tt-RU Tatar (Russia) uk-UA Ukrainian (Ukraine) ur-PK Urdu (Islamic Republic of Pakistan) uz-UZ Uzbek (Latin) (Uzbekistan) uz-UZ Uzbek (Cyrillic) (Uzbekistan) vi-VN Vietnamese (Viet Nam) xh-ZA Xhosa (South Africa) zh-CN Chinese (S) zh-HK Chinese (Hong Kong) zh-MO Chinese (Macau) zh-SG Chinese (Singapore) zh-TW Chinese (T) zu-ZA Zulu (South Africa) مدة العمل ( ساعة ونصف ) SetLocaleInfo.rar
-
السلام عليكم ورحمة والله تعالى وبركاته طيب ببساطه انظر للسلسلة النصية الاتية "Moh8202281012343434" ونريد التعديل عليها لتظهر بهذا الشكل "Moh-820-228-101-234-343-4" او بهذا الشكل "Moh,820,228,101,234,343,4" او بهذا الشكل Moh820/228101/234343/4 يتم عمل ذلك من خلال الكود الاتى Function ReFormat(ByVal strText As String, Optional strSymbol As String = "-", Optional intCountDigits As Integer = 3) Dim i As Long ReFormat = "" For i = 0 To Len(strText) - 1 Step intCountDigits If i = 0 Then ReFormat = Mid(strText, i + 1, intCountDigits) Else ReFormat = ReFormat & strSymbol & Mid(strText, i + 1, intCountDigits) End If Next i End Function syntax code ReFormat(string ,Symbol, Count Digits) Result By default syntax used ReFormat(string) Symbol >-->> - Count Digits >-->> 3 اذا من خلال استدعاء الكود عن طريق البنية المفضلة الاتية: ReFormat(string) تحصل على اضافة العلامة - بعد كل 3 مواضع فى السلسلة النصية اما اذا اردت التعديل فى شكل الرمز وعدد المواضع يمكنك استخدام الكود الاتى : ReFormat(string ,Symbol, Count Digits) مثلا لو اردت استخدام الرمز $ بدلا من الرمز - وتريد وضع الرمز فى السلسلة النصية بعد كل خمس مواضع يكون الكود كالأتى: ReFormat(string ,"$", 5)
- 3 replies
-
- 1
-
- شخابيط
- شخابيط وافكار
- (و22 أكثر)
-
السلام عليكم.. اقدم لكم حيلة قديمة ربما تفيدكم.. على سبيل المثال: لدينا 3 حقول ( العدد 1 ) , ( العدد 2 ) , ( النتيجة ) وأريد ان اقوم بعملية جمع للحقلين 1 و 2 وعرض النتيجة.. الآن عند كتابة رقم في الحقل ( العدد 1 ) وبعدها كتابة رقم في الحقل ( العدد 2 ) تظهر النتيجة مباشرة بدون الخروج من الحقل بمعنى إعطاء النتيجة مباشرة اثناء الكتابة Private Sub textbox1_Change() textbox3.Value = Nz(textbox1.Text, 1) + Nz(textbox2, 1) End Sub الفكرة كلها في اضافة الـ Value لحقل عرض النتيجة والخاصية Text للحقل المراد سحب النتيجة منه. تحياتي لكم.
-
السلام عليكم، أحياناً تواجهنا مشكلة في الأكسس وهي تحول الارقام الى العربية خصوصاً اذا كان بجانب الرقم حروف عربية لذلك دعونا نختصر الوقت على العميل ونقوم بتعديل تنسيقات التاريخ والارقام..الخ برمجياً بدون الطلب من العميل تعديلها يدوياً اقدم لكم فنكشن للتعديل، يمكنكم التعديل والإضافة بحسب ماتجدوه مناسباً. Public Sub EditControlPanelInternational() 'Define a key registry path Dim strComputer Dim objRegistry Dim strKeyPath Dim strValueName Dim getValue Dim regKeyPath Dim strLocaleName, strCountry, strshortDateValue, strlongDateValue, strshortTimeValue, strlongTimeValue, strfirstDayOfWeekValue Const HKEY_CURRENT_USER = &H80000001 strComputer = "." Set objRegistry = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv") regKeyPath = "Control Panel\International" strLocaleName = "en-US" strCountry = "United States" strshortDateValue = "yyyy-MM-dd" strlongDateValue = "dddd, MMMM d, yyyy" strshortTimeValue = "h:mm tt" strlongTimeValue = "h:mm:ss tt" strfirstDayOfWeekValue = "6" srtnativedigits = "0123456789" objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "LocaleName", strLocaleName objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sCountry", strCountry objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sShortDate", strshortDateValue objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sLongDate", strlongDateValue objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sShortTime", strshortTimeValue objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sTimeFormat", strlongTimeValue objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "iFirstDayOfWeek", strfirstDayOfWeekValue objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sNativeDigits", srtnativedigits Debug.Print "Successfully changed system regional settings." End Sub للأمانة الفنكشن من كتابة saf لذلك انا قمت بإضافة السطر srtnativedigits = "0123456789" objRegistry.SetStringValue HKEY_CURRENT_USER, regKeyPath, "sNativeDigits", srtnativedigits لتغيير تنسيق الأرقام من عربي إلى انجليزي ومن ثم قمت بنقله لكم.
-
؟؟FworkerPresence كيف استطيع الغاء التصفية عند فتح النموذج عند الفتح الكومبوبوكس فارغ وشكرا الغاء التصفية.accdb
- 2 replies
-
- ms access
- أكسس access
-
(و1 أكثر)
موسوم بكلمه :
-
السلام عليكم ورحمة الله وبركاته.. اليوم سأشرح لكم الدالة StrConv ولأي الامور تستخدم. الدالة حصرا تتعامل مع النصوص ( String ) ووضيفتها التحويل بين الاحرف الانجليزية ( كبير , صغير ) الدالة تأخذ 3 براميترات: البراميتر القيمة الوصف vbUpperCase 1 تحويل جميع الحروف الى حروف كبيرة vbLowerCase 2 تحويل جميع الحروف الى حروف صغيرة vbProperCase 3 تحويل الحرف الاول من كل كلمة الى كبير وباقي حروف الكلمة الى حروف صغيرة vbUnicode 64 تحويل النص الى سلسلة الـ UNICODE vbFromUnicode 128 تحويل النص من سلسلة UNICODE الى تنسيقات اخرى مثال: StrConv ("officena semo pa3x", 1) Result: "OFFICENA SEMO PA3X" StrConv ("OFFICENA SEMO PA3X", 2) Result: "officena semo pa3x" StrConv ("OFFICENA SEMO PA3X", 3) Result: "Officena Semo Pa3x" الاستخدام في الاستعلام يكون: الاستخدام في داخل محرر الـ VBA يكون: StrConv([CategoryName],3) تحياتي للجميع.. SEMO.Pa3x
-
في كثير من الاحيان، نلجأ الى استخدام الدالة IF أو غيرها من دوال الشروط للتحقق من قيم رقمية. ملاحظة: الدالة تتحقق من الارقام فقط. مثلا لو كان الحقل يتحوي القيمة 1 اظهر لي رسالة جيد واذا كان الحقل يحتوي القيمة 2 اظهرلي رسالة متوسط واذا كان الحقل يحتوي القيمة 3 اظهر لي رسالة ضعيف في الوضع الطبيعي VBA داخل النماذج يكون If txt_Status = 1 Then MsgBox "جيد" ElseIf txt_Status = 2 Then MsgBox "متوسط" ElseIf txt_Status = 3 Then MsgBox "ضعيف" Else MsgBox "لا توجد قيمة مطابقة" End If وفي الاستعلام يكون Check_Value: IIf([text_Status]=1;"جيد";IIf([text_Status]=2;"متوسط";IIf([text_Status]=3;"ضعيف";"لا توجد قيمة مطابقة"))) اما الدالة Choose مختصرة وسهلة اكثر. Nz(Choose(txt_Status, "Good", "Semi-Good", "Bad"), "No Value !") تقوم الدالة بعرض مكان القيمة الصحيحة بين القيم الموضوعه حسب الحقل الموجود txt_Status تحياتي لكم. حسنين
-
السلام عليكم.. موديول لـ InputBox لجعل الكتابة تظهر على شكل نجوم لمساعدتك في حماية كلمات السر او ماشابه. '---------------------------------- 'API CONSTANTS FOR PRIVATE INPUTBOX '---------------------------------- Private Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, _ ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _ (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long Private Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long Private Declare Function SendDlgItemMessage Lib "user32" Alias "SendDlgItemMessageA" _ (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, _ ByVal lpClassName As String, ByVal nMaxCount As Long) As Long Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long 'Constants to be used in our API functions Private Const EM_SETPASSWORDCHAR = &HCC Private Const WH_CBT = 5 Private Const HCBT_ACTIVATE = 5 Private Const HC_ACTION = 0 Private hHook As Long '---------------------------------- 'PRIVATE PASSWORDS FOR INPUTBOX '---------------------------------- '//////////////////////////////////////////////////////////////////// 'Password masked inputbox 'Allows you to hide characters entered in a VBA Inputbox. ' 'Code written by Daniel Klann 'March 2003 '//////////////////////////////////////////////////////////////////// Public Function NewProc(ByVal lngCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Dim RetVal Dim strClassName As String, lngBuffer As Long If lngCode < HC_ACTION Then NewProc = CallNextHookEx(hHook, lngCode, wParam, lParam) Exit Function End If strClassName = String$(256, " ") lngBuffer = 255 If lngCode = HCBT_ACTIVATE Then 'A window has been activated RetVal = GetClassName(wParam, strClassName, lngBuffer) If Left$(strClassName, RetVal) = "#32770" Then 'Class name of the Inputbox 'This changes the edit control so that it display the password character *. 'You can change the Asc("*") as you please. SendDlgItemMessage wParam, &H1324, EM_SETPASSWORDCHAR, Asc("*"), &H0 End If End If 'This line will ensure that any other hooks that may be in place are 'called correctly. CallNextHookEx hHook, lngCode, wParam, lParam End Function Function InputBoxDK(Prompt, Title) As String Dim lngModHwnd As Long, lngThreadID As Long lngThreadID = GetCurrentThreadId lngModHwnd = GetModuleHandle(vbNullString) hHook = SetWindowsHookEx(WH_CBT, AddressOf NewProc, lngModHwnd, lngThreadID) InputBoxDK = InputBox(Prompt, Title) UnhookWindowsHookEx hHook End Function الاستدعاء بهذا الشكل: Call: InputBoxDK("Enter your Password.", "Password Required") الحقوق لاصحابها بالتوفيق للجميع حسنين
-
السلام عليكم, هذا جدول يوضح لكم تنسيقات الارقام في الاكسس كالعملة وغيرها. ارجو ان يفيدكم. انواع التنسيقات "5" التنسيق لعدد موجب "-5" التنسيق لعدد سالب "0.5" التنسيق لعدد عشري "0" التنسيق الخاص بالصفر Zero-length string ("") 5 -5 0.5 0 0 5 -5 1 0 0.00 5.00 -5.00 0.50 0.00 #,##0 5 -5 1 0 $#,##0;($#,##0) $5 ($5) $1 $0 $#,##0.00;($#,##0.00) $5.00 ($5.00) $0.50 $0.00 0% 500% -500% 50% 0% 0.00% 500.00% -500.00% 50.00% 0.00% 0.00E+00 5.00E+00 -5.00E+00 5.00E-01 0.00E+00 0.00E-00 5.00E00 -5.00E00 5.00E-01 0.00E00 "$#,##0;;\Z\e\r\o" $5 $-5 $1 Zero بالتوفيق للجميع
-
السلام عليكم ورحمة الله وبركاته.. آولآ نقُوم بتَسجيل عضُوية بمُوقع [ PasteBin ] رآبط آلتَسجيل [ هُنآ ] آتمآم آلتَسجيل ، ظهُور رسآلة تُخبرك بآلتُوجه نحُو بَريدك لتَفعيل آلعضُوية بَعد عَملية آلتَفعيل ظهُور رسآلة تُخبرك بنجآح آلتَفعيل آلآن نقُوم بتَسجيل آلدخُول قم باعطاء هذا الملف الى العميل لكي يظهر لك الرقم الخاص به ثم يقوم العميل بإعطائك هذا الرقم، بعدها ستقوم انت باضافته الى المفكرة التي انشأتها في موقع pastebin ثُم نقُوم بآلضَغط عَلى كَلك يَمين عَلى كَلمة [ RAW ] ونَختآر ارجع الى برنامجك, وقم بإلصاق الرابط في المكان المخصص له Option Compare Database Private Sub Form_Current() Dim HDD, PID, MB, MAC As String PID = ProcessorId() HDD = VolumeSerialNumber() MAC = MACAddress() MB = MotherBoardID() Dim PHMB As String PHMB = Strings.UCase(MD5Hex(PID & HDD & MB & MAC)) On Error Resume Next Dim objHttp As Object Set objHttp = CreateObject("MSXML2.ServerXMLHTTP") Call objHttp.Open("GET", "ضع الرابط هنا", False) Call objHttp.Send("") For Each c In Split(objHttp.ResponseText, "|") If PHMB = c Then GoTo authed End If Next MsgBox "1 - قد تكون النسخة الحالية غير مسجلة" & ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "2 - تأكد من اتصالك بالانترنت" & ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "3 - اذا لم تكن واحدة من تلك المشاكل قم بالاتصال بالمبرمج" & ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "www.facebook.com/Nisr.Aln3jaf", vbCritical, "ERROR" DoCmd.Close DoCmd.CloseDatabase DoCmd.Quit Exit Sub authed: MsgBox "تم تفعيل النسخة بنجاح" & ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "شكرا لإستخدامك هذه النسخة", vbInformation, "عملية ناجحة" End Sub Public Function MD5Hex(textString As String) As String Dim enc Dim textBytes() As Byte Dim bytes Dim outstr As String Set enc = CreateObject("System.Security.Cryptography.MD5CryptoServiceProvider") textBytes = textString bytes = enc.ComputeHash_2((textBytes)) For pos = 1 To LenB(bytes) outstr = outstr & LCase(Right("0" & Hex(AscB(MidB(bytes, pos, 1))), 2)) Next MD5Hex = outstr Set enc = Nothing End Function Public Function MACAddress() On Error Resume Next strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration", , 48) For Each objItem In colItems MACAddress = objItem.MACAddress Next End Function Public Function ProcessorId() On Error Resume Next Set objWMIService = GetObject("winmgmts:\\.\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor") For Each objItem In colItems ProcessorId = objItem.ProcessorId Next End Function Public Function VolumeSerialNumber() As String On Error Resume Next Set objWMIService = GetObject("winmgmts:\\.\root\cimv2") Set oItems = oWMI.ExecQuery("Select * from Win32_DiskDrive") For Each oItem In oItems VolumeSerialNumber = oItem.SerialNumber Next End Function Public Function MotherBoardID() As String On Error Resume Next strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_BaseBoard", , 48) For Each objItem In colItems MotherBoardID = objItem.SerialNumber Next End Function في كل قواعد البيانات التي تريد حمايتها ضع نفس الرابط، لا تقم بإنشاء مفكرة جديدة في موقع pastebin آلآن آلسؤآل كَيف سآقُوم بآضآفة آكثر مَن رَقم عَميل بنفس المفكرة ؟ آلجوُآب بَين كُل عَميل وآخر آفصل بَينهم بآلـ [ | ] مثآل بَسيط عَلى آلعَملية .. تم بحمد الله ، SEMO.Pa3x GET_INFO.accdb Protection.accdb
-
السلام عليكم, في السابق كنت استخدم خطوط معينة في برامجي وعند اعطاء البرنامج للعميل لاتظهر الخطوط التي قمت باستخدامها بل يظهر بمكانها الخط ( Arial ) وهذه مُشكلة. كت في وقتها الجأ الى ان اضع الخط بجانب قاعدة البيانات وفي داخل قاعدة البيانات اقوم بعمل تحقق لمجلد Fonts والبحث عن الخط في بداية تشغيل القاعدة, فإن لم يجده يعي رسالة للعميل بان الط مفقود وعليه ان يقوم بتثبيته من جانب البرنامج. بحثت طويلاً في الانترنت عن تثبيت خط من الاكسس فقط بدون مساعدة عامل خارجي ولكن لم اصل لنتيجة. اليوم بحمد الله قمت بحل المشكلة بإستخدام ( Visual .NET ) قمت بكتابة اداة بسيطة وظيفتها تثبيت الخط. يتم تمرير براميتر لها وهي بدورها ستقوم بتثبيته الدوال المستخدمة: AddFontResource CreateScalableFontResource ShellExecuteA للمزيد من المعلومات ، اضغط على اسم الدالة ارفقت لكم المصادر من MSDN شرح بسيط لمن لم يعرف ماذا اقصد بتثبيت الخط واستخدام الخط وانه لن يظهر في حال كان العميل لا يملكه. قمت بارفاق قاعدة بيانات لكم كـ مثال للشرح مع الخط المستخدم مع الاداة. شرح الاستعمال: يجب ان تكون الاداة ( SEMO_RegisterFont.exe ) هي والخط الذي سوف تستخدمه بجانب قاعدة البيانات. افتح برنامجك وضع فيه هذا الاجراء. Sub RegisterFont(nFont) Dim strExe As String Dim strArg As String strExe = CurrentProject.Path & "\" & "SEMO_RegisterFont.exe" strArg = "/SEMO/" & nFont ShellExecute 0, "runas", strExe, strArg, vbNullString, SW_SHOWNORMAL End Sub في الاستدعاء اي في الحدث Form_Current RegisterFont "DroidSansArabic.ttf" حيث ان الـ DroidSansArabic.ttf هو اسم الخط الذي قمنا بوضعه بجانب قاعدة البيانات ملاحظة مهمة جدا: في حال كان اسم الخط يتكون من اكثر من كلمة مثل ( Droid Sans Arabic.ttf ) قم بحذف المسافات بين كلمة واخرى بحيث يصبح ( DroidSansArabic.tts ) وستعمل قاعدة البيانات التي قمت بتصميمها بشكل رائع وبالخطوط التي قمت انت بأختيارها بدون الخوف من مشكلة عدم توفر الخطوط في جهاز العميل. الشرح حصري للمنتدى وغير موجود في الانترنت. لا تشكرني الا اذا وجدت انني استحق ذلك. تم بحمد الله حسنين RegisterFont_SEMO_Pa3x.rar
-
اخواني الكرام تحية طيبة وبعد ارجوا منك الترم في مساعدتي فقد احترت كثيرا في كيفية ضبت العهدة لدي قاعدة بيانات انشات بها جدول العمليات وبه اقوم بادخل (كود العملية -نوع العملية اذا كان صرف او قبض - المبلغ -والفئات وهي انواع المصروفات وبالنسبة للقبض اذا كان حوالة بنكية من حساب او ايداع بنكي من قبل الشركة) هذا بالنسبة للعمليات بحث يتم في النهاية حساب المتبقي كاش في الخزنه ولكن بعد صرف المبالغ اقوم بارسال الفواتير والمستندات الي ادارة الحسابات الرئيسية ليقوموا بخصم المبالغ المفوتره من حسابي لديهم بمعني اخر ان المبالغ التي لها فواتير عندي تسقط من حسابي عند ارسالها الي الحسابات فلدي الان بنك - و مصروفات - و رصيد البنك يوجد به الحوالات والمبالغ المستلمه التي اقوم من خلاله بتسديد المصروفات وبعد تسديدها اجمع الفواتير لارسالها الي الحسابات لتنزل من حسابي اريد عمل هذا البنك = رصيد البنك السابق+ الحوالات رصيد البنك = البنك - المصروفات الرصيد الشخصي (رصيد العهدة الدائن)= البنك - المبالغ المفوترة التي ارسلت الي الحسابات كيف اقوم بترتيب هذا بالاكسس جائتني فكره بان اقوم بانشاء حقل اضافي اقوم بتسجيل فيه "ارسل" و "لم يرسل" علي ان تكون "لم يرسل" القيمة الافتراضيه ومن ثم اقوم بعمل استعلام علي قيمة "ارسل" ومن خلالة اقوم بعمل معادلة لطرح ما تم ارساله من المصروفات من اجمالي الايرادات ارجوا من سيادتكم التكرم بافادتي اذا كان هناك افكار افضل من هذا واسال كيف اضع الرصيد في النمائج بحيث يظهر عند اضافة اي سجل
-
السلام عليكم ورحمة الله اخواني الكرام تحية طيبة وبعد ارجوا منك التكرم في مساعدتي فقد احترت كثيرا في كيفية ضبت العهدة لدي قاعدة بيانات انشات بها جدول العمليات وبه اقوم بادخل (كود العملية -نوع العملية اذا كان صرف او قبض - المبلغ -والفئات وهي انواع المصروفات وبالنسبة للقبض اذا كان حوالة بنكية من حساب او ايداع بنكي من قبل الشركة) هذا بالنسبة للعمليات بحث يتم في النهاية حساب المتبقي كاش في الخزنه ولكن بعد صرف المبالغ اقوم بارسال الفواتير والمستندات الي ادارة الحسابات الرئيسية ليقوموا بخصم المبالغ المفوتره من حسابي لديهم بمعني اخر ان المبالغ التي لها فواتير عندي تسقط من حسابي عند ارسالها الي الحسابات فلدي الان بنك - و مصروفات - و رصيد البنك يوجد به الحوالات والمبالغ المستلمه التي اقوم من خلاله بتسديد المصروفات وبعد تسديدها اجمع الفواتير لارسالها الي الحسابات لتنزل من حسابي اريد عمل هذا البنك = رصيد البنك السابق+ الحوالات رصيد البنك = البنك - المصروفات الرصيد الشخصي (رصيد العهدة الدائن)= البنك - المبالغ المفوترة التي ارسلت الي الحسابات كيف اقوم بترتيب هذا بالاكسس جائتني فكره بان اقوم بانشاء حقل اضافي اقوم بتسجيل فيه "ارسل" و "لم يرسل" علي ان تكون "لم يرسل" القيمة الافتراضيه ومن ثم اقوم بعمل استعلام علي قيمة "ارسل" ومن خلالة اقوم بعمل معادلة لطرح ما تم ارساله من المصروفات من اجمالي الايرادات ارجوا من سيادتكم التكرم بافادتي اذا كان هناك افكار افضل من هذا واسال كيف اضع الرصيد في النمائج بحيث يظهر عند اضافة اي سجل