Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перевести из vb в C# 
:(
    Опции темы
Allexander
Дата 26.12.2012, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 14.6.2006

Репутация: нет
Всего: нет



Добрый день, вопрос в следующем есть ли конвертеры vbscript в C# или может кто поможет перегнать скрипт на C#
Код

public function encrypt(password)
    dim key(16)
    dim one,two,three,four
    dim i
    dim dstbytes(16)

    bu_String2Bytes password, key
    bu_String2Bytes password, dstbytes
    
    one= bu_Bytes2Int(key, 0) * 213119 + 2529077
    one = one - Fix(one/ 4294967296) * 4294967296
    two = bu_Bytes2Int(key, 4) * 213247 + 2529089
    two = two - Fix(two/ 4294967296) * 4294967296
    three = bu_Bytes2Int(key, 8) * 213203 + 2529589
    three = three - Fix(three/ 4294967296) * 4294967296
    four = bu_Bytes2Int(key, 12) * 213821 + 2529997
    four = four - Fix(four/ 4294967296) * 4294967296


    call MyuwSplit(one, key(0), key(1), key(2), key(3))
    call MyuwSplit(two, key(4), key(5), key(6), key(7))
    call MyuwSplit(three, key(8), key(9), key(10), key(11))
    call MyuwSplit(Four, key(12), key(13), key(14), key(15))

    dstbytes(0) = dstbytes(0) xor key(0)

    for i=1 to 15
        dstbytes(i) = dstbytes(i) xor dstbytes(i-1) xor key(i and 15)
    next

    for i=0 to 15
        if dstbytes(i) = 0 then
            dstbytes(i) = &H66
        end if
    next

    encrypt = "0x"
    for i=0 to 15 
        if dstbytes(i) < &H10 then
            encrypt = encrypt & "0" & Hex(dstbytes(i))
        else
            encrypt = encrypt & Hex(dstbytes(i))
        end if
    next
end function

Public Sub MyuwSplit(ByRef w, a, b, C, d)
    d = Fix(w / &H1000000)
    c = Fix((w - d * &H1000000) / &H10000)
    b = Fix((w - d * &H1000000 - c * &H10000) / &H100)
    a = Fix((w - d * &H1000000 - c * &H10000 - b * &H100))
End Sub

public Function bu_Bytes2Int(aBytes(), index)
    dim rslt
    rslt = aBytes(index) + aBytes(index+1)*256 + aBytes(index+2)*65536 + aBytes(index+3)*16777216

    bu_Bytes2Int = rslt
End Function

Public Function bu_String2Bytes(str, aBytes())
    nBytes = Len(str)
    For i = 0 To nBytes - 1
        aBytes(i) = Asc(Mid(str, i + 1, 1))
    Next

    bu_String2Bytes = nBytes

End Function


Спасибо.
PM MAIL   Вверх
dzaraev
Дата 13.1.2013, 01:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 12.1.2013

Репутация: 1
Всего: 1



"Перевести код" - это называется "транслировать". 
Google - друг, вот первая ссылка: http://www.carlosag.net/tools/codetranslator/
--------------------
Если вопрос решён - помечайте тему.  
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0691 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.