vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Re: Fehler: nicht genügend Stapelspeicher 
Autor: Tommyknocker
Datum: 07.04.04 20:47

Ok, hier mal ein wenig Code

Der Einstiegspunkt meine Anwendung ist das Load-Ereignis.
Hier wird eine Instanz meiner Klasse CFolie erstellt und danach die Prozedur loadINI aufgerufen.
Diese liest Werte aus einer INI-Datei und weist sie den Properties der Instanz Folie zu:

Private Sub Form_Load()
   'Neues Folienobjekt erstellen
    Set Folie = New CFolie
 
    'INI-Datei laden
     Call loadINI
...
Hier der Code für die Prozedur loadINI:
'Die folgende Deklarationen werden zum Auslesen von Werten einer INI-Datei 
' benötigt
Private Declare Function GetPrivateProfileInt Lib "kernel32" _
     Alias "GetPrivateProfileIntA" (ByVal lpApplicationName _
     As String, ByVal lpKeyName As String, ByVal nDefault As _
     Long, ByVal lpFileName As String) As Long
     'Bedeutung der Parameter:
     'lpApplicationName - Abschnittsname in INI-Datei
     'lpKeyName - Schluesselbezeichnung
     'nDefault - Defaultwert falls noch nicht vorhanden
     'lpFileName - Name der Ini-Datei
 
 
 
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias _
  "GetPrivateProfileStringA" (ByVal lpApplicationName As String, _
  ByVal lpKeyName As Any, ByVal lpDefault As String, _
  ByVal lpReturnedString As String, ByVal nSize As Long, _
  ByVal lpFileName As String) As Long
  'Bedeutung der Parameter:
  'lpApplicationName  - Abschnittsname in INI-Datei
  'lpKeyName - Schluesselbezeichnung
  'nDefault - Defaultwert falls noch nicht vorhanden
  'lpReturnedString - Puffer, der den Rückgabewert enthält (muss mit 
  ' ausreichend Leerstellen gefüllt sein)
  'nSize - Größe des Puffers in Bytes.
  'lpFileName Pfadangabe der (INI-)Datei
  'Rückgabewert:
  'Bei erfolgreichem Aufruf enthält der Rückgabewert die Länge des gelesenen 
  ' Strings (Textes), andernfalls wird "0" zurückgegeben.
 
 
'Auslesen der Datei "Pressure.INI"
Public Sub loadINI()
    Dim tempRetStr As String * 50
    Dim retVal As Long
    Dim iniDatei as String
    iniDatei = App.Path & "/Pressure.INI"
 
    Folie.MinFlaeche = GetPrivateProfileInt("Folie", "minFlaeche", 9, iniDatei)
 
     Folie.spaltenX = GetPrivateProfileInt("Folie", "spaltenX", 64, iniDatei)
 
    Folie.zeilenY = GetPrivateProfileInt("Folie", "zeilenY", 32, iniDatei)
 
    retVal = GetPrivateProfileString("Folie", "breiteX", "394", tempRetStr, Len( _
      tempRetStr), iniDatei)
    If (retVal > 0) Then
        Folie.BreiteX = CSng(tempRetStr)
    Else
        Folie.BreiteX = 394
    End If
 
    retVal = GetPrivateProfileString("Folie", "hoeheY", "193,5", tempRetStr, _
      Len(tempRetStr), iniDatei)
    If (retVal > 0) Then
        Folie.HoeheY = CSng(tempRetStr)
    Else
        Folie.HoeheY = 193.5
    End If
 
    'FEHLERZEITPUNKT
 
 
    retVal = GetPrivateProfileString("Folie", "toleranzFlaeche", "0,5", _
      tempRetStr, Len(tempRetStr), iniDatei)
 
    If (retVal > 0) Then
        Folie.ToleranzFlaeche = CSng(tempRetStr)
    Else
        Folie.ToleranzFlaeche = 0.5
    End If
 
    retVal = GetPrivateProfileString("Folie", "toleranzGewicht", "0,5", _
      tempRetStr, Len(tempRetStr), iniDatei)
    If (retVal > 0) Then
        Folie.ToleranzGewicht = CSng(tempRetStr)
    Else
        Folie.ToleranzGewicht = 0.5
    End If
 
    retVal = GetPrivateProfileString("Folie", "toleranzSensor", "0,3", _
      tempRetStr, Len(tempRetStr), iniDatei)
    If (retVal > 0) Then
        Folie.ToleranzSensor = CSng(tempRetStr)
    Else
        Folie.ToleranzSensor = 0.3
    End If
End If
End Sub
Durch MsgBox zu Debug-Zwecken habe ich den Fehlerzeitpunkt festgestellt. Dieser ist oben im Code durch einen Kommentar gekennzeichnet.

Die Klasse CFolie besitzt insgesamt 2 private Konstanten, 17 öffentliche properties, 3 öffentliche Funktionen und 4 öffentliche Prozeduren.

Habe folgendes im Netz gefunden:
http://www.herber.de/forum/archiv/320to324/t320847.htm#320849

Ist meine Klasse CFolie zu groß ??????
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Fehler: nicht genügend Stapelspeicher5.448Tommyknocker07.04.04 18:51
Re: Fehler: nicht genügend Stapelspeicher3.369Andi W07.04.04 19:33
Re: Fehler: nicht genügend Stapelspeicher2.963Tommyknocker07.04.04 19:57
Re: Fehler: nicht genügend Stapelspeicher2.681SailSteam07.04.04 20:19
Re: Fehler: nicht genügend Stapelspeicher2.664Tommyknocker07.04.04 20:47
Re: Fehler: nicht genügend Stapelspeicher2.573Tommyknocker07.04.04 22:35
Re: Fehler: nicht genügend Stapelspeicher2.423GuidoE08.04.04 03:31
Re: Fehler: nicht genügend Stapelspeicher2.144SailSteam08.04.04 08:35
Re: Fehler: nicht genügend Stapelspeicher2.063Tommyknocker08.04.04 09:03
Re: Fehler: nicht genügend Stapelspeicher2.015GuidoE08.04.04 22:22
Re: Fehler: nicht genügend Stapelspeicher2.116vanbockl03.03.06 21:15

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel