jaPBe für PB 4.00

Ankündigungen PureBasic oder die Community betreffend.
Benutzeravatar
gnozal
Beiträge: 219
Registriert: 04.12.2004 13:01
Wohnort: Frankreich (67)
Kontaktdaten:

Beitrag von gnozal »

If you execute this code, what do you have in PlatformSDKHelpString$ ?

Code: Alles auswählen

Procedure SDK_IsAvaiable()
  IsAvaiable = 0
  
  If UseSDK_UseMSDN = #False
    ; PSDK
    If RegCreateKeyEx_(#HKEY_CURRENT_USER, "Software\Microsoft\MSDN\7.0\Help", 0, 0, #REG_OPTION_NON_VOLATILE, #KEY_READ , 0, @NewKey, @KeyInfo) = #ERROR_SUCCESS
      index = 0
      Repeat
        ValueName$ = Space(260)
        ValueNameSize = 260
        ValueData$ = Space(260)
        ValueDataSize = 260
        
        Result = RegEnumValue_(NewKey, index, @ValueName$, @ValueNameSize, 0, @ValueType, 0, 0)      
        
        If Result = #ERROR_SUCCESS And ValueType = #REG_SZ
          
          If Left(LCase(ValueName$),18) = "ms-help://ms.psdk." ; current version: ms-help://MS.PSDK.1033
            PlatformSDKHelpString$ = ValueName$
            IsAvaiable = 1
            
            Break
          EndIf
          
        EndIf
        
        index + 1
      Until Result <> #ERROR_SUCCESS
      
      RegCloseKey_(NewKey)
    EndIf
    ;
  Else
    ; MSDN
    If RegCreateKeyEx_(#HKEY_CURRENT_USER, "Software\Microsoft\MSDN\8.0\Help", 0, 0, #REG_OPTION_NON_VOLATILE, #KEY_READ , 0, @NewKey, @KeyInfo) = #ERROR_SUCCESS 
      index = 0 
      Repeat 
        ValueName$ = Space(260) 
        ValueNameSize = 260 
        ValueData$ = Space(260) 
        ValueDataSize = 260 
        
        Result = RegEnumValue_(NewKey, index, @ValueName$, @ValueNameSize, 0, @ValueType, 0, 0)      
        
        If Result = #ERROR_SUCCESS And ValueType = #REG_SZ 
          
          If Left(LCase(ValueName$),17) = "ms-help://ms.msdn" ; current version: ms-help://MS.PSDK.1033 
            PlatformSDKHelpString$ = ValueName$ 
            IsAvaiable = 1 
            
            Break 
          EndIf 
          
        EndIf 
        
        index + 1 
      Until Result <> #ERROR_SUCCESS 
      
      RegCloseKey_(NewKey) 
    EndIf
    ;
  EndIf
  
  ProcedureReturn IsAvaiable
EndProcedure
For free libraries and tools, visit my web site (also home of jaPBe V3 and PureFORM).
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

it works:

Code: Alles auswählen

          If Left(LCase(ValueName$),18) = "ms-help://ms.psdk." ; current version: ms-help://MS.PSDK.1033
            PlatformSDKHelpString$ = ValueName$
            Debug PlatformSDKHelpString$
            IsAvaiable = 1
            
gives: ms-help://MS.PSDK.1033
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
DataMiner
Beiträge: 220
Registriert: 10.10.2004 18:56

Beitrag von DataMiner »

Sorry, but not for me. I had to change the code to:

Code: Alles auswählen

If Left(LCase(ValueName$),17) = "ms-help://ms.psdk" ; current version: ms-help://MS.PSDK.1033
            PlatformSDKHelpString$ = ValueName$
            Debug PlatformSDKHelpString$
            IsAvaiable = 1
            
            Break
          EndIf
because my registry values are:
ms-help://MS.PSDKSVR2003SP1.1033
ms-help://MS.PSDKXPSP2.1033
VS_Docs_Installed
__________________________________________
Weniger glauben - mehr wissen!
------------------------------------------------------
Proud beneficial owner of SpiderBasic, PureBasic 3.x, 4.x, 5.x and PureVisionXP
Benutzeravatar
gnozal
Beiträge: 219
Registriert: 04.12.2004 13:01
Wohnort: Frankreich (67)
Kontaktdaten:

Beitrag von gnozal »

DataMiner hat geschrieben:Sorry, but not for me. I had to change the code to:

Code: Alles auswählen

If Left(LCase(ValueName$),17) = "ms-help://ms.psdk" ; current version: ms-help://MS.PSDK.1033
            PlatformSDKHelpString$ = ValueName$
            Debug PlatformSDKHelpString$
            IsAvaiable = 1
            
            Break
          EndIf
because my registry values are:
ms-help://MS.PSDKSVR2003SP1.1033
ms-help://MS.PSDKXPSP2.1033
VS_Docs_Installed
Ok, I will change this in the next version. Any others problems / remarks ?
For free libraries and tools, visit my web site (also home of jaPBe V3 and PureFORM).
Benutzeravatar
gnozal
Beiträge: 219
Registriert: 04.12.2004 13:01
Wohnort: Frankreich (67)
Kontaktdaten:

Beitrag von gnozal »

ts-soft hat geschrieben:it works:

Code: Alles auswählen

          If Left(LCase(ValueName$),18) = "ms-help://ms.psdk." ; current version: ms-help://MS.PSDK.1033
            PlatformSDKHelpString$ = ValueName$
            Debug PlatformSDKHelpString$
            IsAvaiable = 1
            
gives: ms-help://MS.PSDK.1033
If this is correct, I don't understand why the help is calling MSDN and not PSDK.
Could you debug jaPBe.pb (download the sources) and tell me the values (in the debugger) for PlatformSDKHelpString$ and UseSDK after you called F1 ?
For free libraries and tools, visit my web site (also home of jaPBe V3 and PureFORM).
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

gnozal hat geschrieben: Could you debug jaPBe.pb (download the sources) and tell me the values (in the debugger) for PlatformSDKHelpString$ and UseSDK after you called F1 ?
sorry, can't compile jaPBe.pb, only error messages :(
doesn't run in PB4 and doesn't run in PB3.94 (No SubSytem, don't load the
Compiler)
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
gnozal
Beiträge: 219
Registriert: 04.12.2004 13:01
Wohnort: Frankreich (67)
Kontaktdaten:

Beitrag von gnozal »

ts-soft hat geschrieben:
gnozal hat geschrieben: Could you debug jaPBe.pb (download the sources) and tell me the values (in the debugger) for PlatformSDKHelpString$ and UseSDK after you called F1 ?
sorry, can't compile jaPBe.pb, only error messages :(
doesn't run in PB4 and doesn't run in PB3.94 (No SubSytem, don't load the
Compiler)
You need PB3.94 and the whole jaPBeForPB400.7z archive
For free libraries and tools, visit my web site (also home of jaPBe V3 and PureFORM).
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

PB 3.94 IDE gives error: constant not found an so on
jaPBe V3 with pbcompiler 3.94 gives error: no subsystem found, can't start compiler but found it, an so on :(
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
gnozal
Beiträge: 219
Registriert: 04.12.2004 13:01
Wohnort: Frankreich (67)
Kontaktdaten:

Beitrag von gnozal »

ts-soft hat geschrieben:PB 3.94 IDE gives error: constant not found an so on
jaPBe V3 with pbcompiler 3.94 gives error: no subsystem found, can't start compiler but found it, an so on :(
I forgot : you have to compile the sources with the 'old' jaPBe for PB3.94 (because of the #jaPBe_* constants), and place the SCILEXER.DLL in \Compilers.
For free libraries and tools, visit my web site (also home of jaPBe V3 and PureFORM).
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Debugger hat geschrieben:ms-help://MS.PSDK.1033
but it comes MSDN :( , not PSDK
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten