BG Development


Страници: (3) [1] 2 3   ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> Конвертиране от VB6 към VB.NET, Как да заредя файла
Zombayo
Публикувано на: 14-04-2016, 13:35
Quote Post



Име:
Група: Потребител
Ранг: Посетител

Мнения: 106
Регистриран на: 30.04.05



Здравейте,
Искам да започна с това че не съм програмист и имам задача да конвертирам програма от VB6 към VB.NET

Това което конкретно ме мъчи е, че при VB6 зареждаме нещо си с този код:
CODE

Load(Inter_pol_surfex)


Съобщението за грешка на Visual Basic 8 е:
Name 'Load' is declared.

Разрових се тук там и намерих този код:
CODE

Private Sub Load(ByVal Inter_pol_surfex As Single)

   End Sub

След което съобщението за грешка изчезна, но се появи друго:
Value of type 'Int_pol_surf.Inter_pol_surfex' cannot be converted to 'Single'.

Опитах да променя типа с Int, boolean, double, decimal... Не става..

Това е кода който се намира в самата форма:
CODE

Option Strict Off
Option Explicit On
Friend Class Inter_pol_surfex
      Inherits System.Windows.Forms.Form
      Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click
            Dim k, i, j, l As Integer
            'UPGRADE_WARNING: Lower bound of array ILIAN_CELL was changed from 1,1 to 0,0. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="0F1C9BE1-AF9D-476E-83B1-17D43BECFF20"'
            Dim ILIAN_CELL(285696, 2) As Single
            'UPGRADE_WARNING: Lower bound of array ILIAN_SURFEX was changed from 1 to 0. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="0F1C9BE1-AF9D-476E-83B1-17D43BECFF20"'
            Dim ILIAN_SURFEX(285696) As Integer
            'UPGRADE_WARNING: Lower bound of array SURFEX_CELL was changed from 1,1 to 0,0. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="0F1C9BE1-AF9D-476E-83B1-17D43BECFF20"'
            Dim SURFEX_CELL(1919, 2) As Single
            'UPGRADE_WARNING: Lower bound of array Surfex_to_Ilian was changed from 1 to 0. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="0F1C9BE1-AF9D-476E-83B1-17D43BECFF20"'
       Dim Surfex_to_Ilian(1919) As String
            'Call Interpol_ALADIN
            'Call Interpol_ILIAN
            'Call Transfer_IAOS_Data
            'Call Export_For_SURFEX
            'End
            Me.Show()
            'DoEvents
            Me.Text1.Text = "текст"
            System.Windows.Forms.Application.DoEvents()
            Call Average_ILIAN()
            Me.Text1.Text = "текст"
            System.Windows.Forms.Application.DoEvents()
            Call Interpol_ECMWF()
            Me.Text1.Text = "текст"
            System.Windows.Forms.Application.DoEvents()
            Call Interpol_ECMWF_6h()
            Me.Text1.Text = "текст"
            System.Windows.Forms.Application.DoEvents()
            Call Interpol_ALADIN()
            Me.Text1.Text = "текст"
            System.Windows.Forms.Application.DoEvents()
            Call Interpol_Valery()
            Me.Text1.Text = "Finished Interpol!"
            System.Windows.Forms.Application.DoEvents()
            End
      End Sub
      
      'UPGRADE_NOTE: Form_Initialize was upgraded to Form_Initialize_Renamed. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="A9E4979A-37FA-4718-9994-97DD76ED70A7"'
      Private Sub Form_Initialize_Renamed()
            List1.SelectedIndex = CDbl(InputGod) - 2010 - 1
            List2.SelectedIndex = CDbl(InputMes) - 1
            System.Windows.Forms.Application.DoEvents()
            Call Command1_Click(Command1, New System.EventArgs())
   End Sub
End Class


Още един път се извинявам ако на някой му прозвучи глупав или смешен въпросът ми, и ще бъда изключително благодарен за съдействие!


--------------------
CLEAN CODE NOT RECOMMENDED
PMEmail Poster
Top
Golden Gega
Публикувано на: 14-04-2016, 16:40
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 977
Регистриран на: 04.06.10



"Искам да започна с това че не съм програмист и имам задача да конвертирам програма от VB6 към VB.NET"

Страх ме хваща като го прочетох... За да конвертираш обикновенно трябва да имаш добри познания по две системи, ти нямаш по нито една.
На твое място не бих приел такава задача, но се възхищавам на ентусиазма ти.
PMEmail Poster
Top
nik_dot_net
Публикувано на: 14-04-2016, 17:27
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 523
Регистриран на: 17.12.15



...

Това мнение е било редактирано от nik_dot_net на 11-07-2016, 22:16
PMEmail Poster
Top
akrachev
Публикувано на: 14-04-2016, 20:21
Quote Post



Име: акрачев
Група: Потребител
Ранг: Старо куче

Мнения: 610
Регистриран на: 27.11.09



Моят съвет е : остави VB6 кода - Microsoft обещават поне още 10 години да поддържат runtime-а му.
PMEmail Poster
Top
Zombayo
  Публикувано на: 15-04-2016, 13:13
Quote Post



Име:
Група: Потребител
Ранг: Посетител

Мнения: 106
Регистриран на: 30.04.05



CODE
Load(Inter_pol_surfex)
го заместих с
CODE
Dim f As New Inter_pol_surfex
f.Show()


и Visual Basic-a спря да ми се кара.

Останаха две грешки:

Едната е "Number of indices exceeds the number of dimensions of the indexed array".

Тази грешка ми е вади 26 пъти ето на това.

CODE
If MinNew > ForcLocS(kk) Then MinNew = ForcLocS(kk)
      RezSum(jj, 44 + 1 - k) = RezSum(jj, 44 + 1 - k) +    RezLoc(jj, 44 + 1 - k)
                                                kk = kk + 1
                                          Else
                                                RezLoc(jj, 44 + 1 - k) = -99999#
                                                RezSum(jj, 44 + 1 - k) = -99999#
                                          End If


Когато кликна върху грешката ми маркира точно това (jj, 44 + 1 - k).

Втората грешка е:
"Value of type '2-dimensional array of Single cannot be converted to '1-dimensional array of Single because the array types have different numbers of dimensions."

Кликвам върху грешката и ме изпраща на този код:

CODE
If (MaxRain > 2 And MaxRain < 9000) Or (k > 1 And MaxRain < 9000) Then
                           If k <> 2 Then
           GriddingSubRain(WorkDir + FileNames(k + 8), ForcLocS, MaxRain, RezSum, True, True)

По-точно върху RezSum.
От там кликвам с десен бутон върху RezSum -> Go to Definition и ме изпраща на ето този код:
CODE

Dim RezSum(64, 44) As Single


П.П "А бе не съм програмист, но пък съм доволен че се справям ! icon_lol.gif "

Това мнение е било редактирано от Zombayo на 15-04-2016, 13:15


--------------------
CLEAN CODE NOT RECOMMENDED
PMEmail Poster
Top
nik_dot_net
Публикувано на: 15-04-2016, 15:40
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 523
Регистриран на: 17.12.15



...

Това мнение е било редактирано от nik_dot_net на 11-07-2016, 22:15
PMEmail Poster
Top
wqw
Публикувано на: 15-04-2016, 15:43
Quote Post


Group Icon
Име: Владимир Висулчев
Група: VIP
Ранг: Почетен член

Мнения: 5826
Регистриран на: 10.06.04



QUOTE (Zombayo @ 15-04-2016, 14:13)
Когато кликна върху грешката ми маркира точно това (jj, 44 + 1 - k).

Кое от трите!?

cheers,
</wqw>


--------------------
PMEmail PosterUsers Website
Top
Zombayo
Публикувано на: 18-04-2016, 10:06
Quote Post



Име:
Група: Потребител
Ранг: Посетител

Мнения: 106
Регистриран на: 30.04.05



QUOTE (wqw @ 15-04-2016, 15:43)
QUOTE (Zombayo @ 15-04-2016, 14:13)
Когато кликна върху грешката ми маркира точно това (jj, 44 + 1 - k).

Кое от трите!?

cheers,
</wqw>

Оправих се, конвертирах програмата няма нито една грешка, оставих е да е тестват.




--------------------
CLEAN CODE NOT RECOMMENDED
PMEmail Poster
Top
Zombayo
  Публикувано на: 18-04-2016, 12:08
Quote Post



Име:
Група: Потребител
Ранг: Посетител

Мнения: 106
Регистриран на: 30.04.05



Сега естествено, продължаваме напред с конвертирането на друга програма, която е писана на Visual Basic 6.

Проблема е следния:

Отварям .vbp файла, отваря ми се прозорец който ме кара да продължа напред, къде да запиша новият конвертиран проект и т.н и след известно зареждане гърми грешка от тип:

"Could not load referenced component comctl32.ocx mshflxgd.ocx" в самата папка на програмата имаше 3 файла с разширение .vbp.

Двата от тях се записаха и конвертираха в папка по мой избор без проблем.
Третия вади тази грешка.

Как мога да реша проблема ?


--------------------
CLEAN CODE NOT RECOMMENDED
PMEmail Poster
Top
wqw
Публикувано на: 18-04-2016, 13:00
Quote Post


Group Icon
Име: Владимир Висулчев
Група: VIP
Ранг: Почетен член

Мнения: 5826
Регистриран на: 10.06.04



Имаш ли VB6 инсталирано на машината на която правиш конверсията?

Също имай предвид, че тези ocx-и са 32-битови и нямат x64 имплементация. Т.е. и Any CPU най-вероятно няма да му хареса за target project-а

cheers,
</wqw>

Това мнение е било редактирано от wqw на 18-04-2016, 13:00


--------------------
PMEmail PosterUsers Website
Top
0 потребители преглеждат тази тема в момента (0 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (3) [1] 2 3  Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2018 | BG Development | All Rights Reserved
RSS 2.0