الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ماهو المقابل لهذه الدوال فى C#

بدأه حمزه المصرى في 5 مارس 2012 · 5 رد · 1,916 مشاهدة · في قسم تكنولوجيا Microsoft .NET العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
Imports System.Management
Public Class Form1
        Private Sub GetIdButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GetIdButton.Click
        Dim Searcher As ManagementObjectSearcher
        Searcher = New ManagementObjectSearcher("Select ProcessorId From Win32_Processor")
        For Each Device As ManagementObject In Searcher.Get
                For Each Prop As PropertyData In Device.Properties
                TextBoxId.Text = (Prop.Value.ToString)
                Next
        Next
        TextBoxReg.Text = Str2Int(TextBoxId.Text)
        TextBoxAct.Text = Str2Int(TextBoxReg.Text)
        End Sub
        Function Str2Int(ByVal InStrng As Object) As String
        Dim StrLn As Integer
        Dim Cntr As Integer
        Dim NewStr As String
        Str2Int = ""
        StrLn = Len(InStrng)
        If StrLn = 0 Then Exit Function
        NewStr = ""
        For Cntr = 1 To StrLn
                Select Case Mid(InStrng, Cntr, 1)
                Case "0" To "z"
                        NewStr = NewStr & Asc(Mid(InStrng, Cntr, 1))
                End Select
        Next Cntr
        Str2Int = NewStr
        End Function
End Class

لو ممكن تحويل الكود ده C# وجزاكم الله خيراً

وخصوصا جزء Mid و ASC

مصدر الكود

شرح الوافي في حماية البرنامج عبر التسجيل والتفعيل

تم تعديل هذه المشاركة بواسطة حمزه المصرى في 5 مارس 2012 في 21:34

C# - SQl - Matlab - ASP - PHP - HTML -XML -Crystal Report

#2
using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Management;
public class Form1
{
	private void GetIdButton_Click(System.Object sender, System.EventArgs e)
	{
		ManagementObjectSearcher Searcher = default(ManagementObjectSearcher);
		Searcher = new ManagementObjectSearcher("Select ProcessorId From Win32_Processor");
		foreach (ManagementObject Device in Searcher.Get) {
			foreach (PropertyData Prop in Device.Properties) {
				TextBoxId.Text = (Prop.Value.ToString);
			}
		}
		TextBoxReg.Text = Str2Int(TextBoxId.Text);
		TextBoxAct.Text = Str2Int(TextBoxReg.Text);
	}
	public string Str2Int(object InStrng)
	{
		string functionReturnValue = null;
		int StrLn = 0;
		int Cntr = 0;
		string NewStr = null;
		functionReturnValue = "";
		StrLn = Strings.Len(InStrng);
		if (StrLn == 0)
			return functionReturnValue;
		NewStr = "";
		for (Cntr = 1; Cntr <= StrLn; Cntr++) {
			switch (Strings.Mid(InStrng, Cntr, 1)) {
				case "0": // TODO: to "z"
					NewStr = NewStr + Strings.Asc(Strings.Mid(InStrng, Cntr, 1));
					break;
			}
		}
		functionReturnValue = NewStr;
		return functionReturnValue;
	}
}

http://www.developerfusion.com/tools/convert/vb-to-csharp/

2
#3

جزاكم الله خيراً أنا أعرف هذه الطريقة وهى لا تقوم بالتحويل بالطريقة الصحيحة فهى تحتوى على الكثير من الأخطاء مثلاً لا يوجد فى السى شئ اسمه mid ولا ASC

ولذلك سألت

شكرا للمحاولة وجزاكم الله خيرا

C# - SQl - Matlab - ASP - PHP - HTML -XML -Crystal Report

#4

المقابل للمنهج Asc هو تحويل المتحول من نوع رمز char إلى int فيعيد رقم الأسكي مثال :

int AsciiCode = (int)('z');

والمقابل لمنهج Mid

هو المنهج SubString التابع لأي متحول من نوع string

1

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#5
اقتباس
لا يوجد فى السى شئ اسمه mid ولا ASC

ولا حتى في vb.net الا باستخدام المكتبة Microsoft.VisualBasic والتي هي عبارة مكتبة للتوافق مع vb6 .

فيمكنك استخدامها في السي شارب كما استخدمها الاخ Unknown وستعمل بشكل جيد (هل جربت الكود الذي ذكره ؟)

او التحويل الى الطريقة الصحيحة كما ذكر الاخ ( المبرمج أبو أحمد)

او بطريقة اخرى

var aBytes = System.Text.Encoding.Default.GetBytes(InStrng);
string NewStr  = "";

foreach (string Item in aBytes) {


	if (Item >= Keys.A & Item <= Keys.Z) {
		NewStr  += Item.ToString;
	}

}
2
#6

نجحت طرقة الأخ Unknown

جزاكم الله خيراً

C# - SQl - Matlab - ASP - PHP - HTML -XML -Crystal Report

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…