Building opsi-winst

The place for development of / with / for opsi.
Post your API questions here!
Benutzeravatar
SisterOfMercy
Beiträge: 908
Registriert: 22 Jun 2012, 19:18

Building opsi-winst

Beitragvon SisterOfMercy » 25 Sep 2018, 15:25

I'm trying to build opsi-winst myself with lazarus.

I have used the steps in this post, and modified them: viewtopic.php?t=7182

The opsi-winst has to be compiled by Lazarus/Freepascal
using the Libraries indy, dcpcrypt, lzrichedit.


- Downloaded and installed Lazarus 1.8.4 with Freepascal 3.0.4
- Downloaded and installed Lazarus 1.8.4 stuff for win32 target
- Started Lazarus IDE, installed the online package manager from c:\Lazarus\components\onlinepackagemanager\onlinepackagemanager.lpk
- Installed packages with the online package manager: DPCrypt, HtmlViewer, Indy10, LazRichView
- Applied settings, let Lazarus rebuild itself
- Downloaded lazarus-master and lazarus-experimental from https://github.com/opsi-org/lazarus (green clone or download button)
- Opened project file: c:\opsi\lazarus-experimental\opsi-script\winst.lpi
- Run -> Compile

This buggers off with about 50 errors in c:\opsi\lazarus-experimental\external_libraries\misc\DSiWin32.pas
Uhm, what am I supposed to do with this? You build with the same version 1.53c as on github, right?
Bitte schreiben Sie Deutsch, when I'm responding in the German-speaking part of the forum!

Benutzeravatar
n.wenselowski
Beiträge: 2860
Registriert: 04 Apr 2013, 12:15

Re: Building opsi-winst

Beitragvon n.wenselowski » 11 Okt 2018, 10:33

Hi,

I moved the topic to the development subforum. Please use this in the future for topics like this!

Can you show the exact errors you have?


Kind regards

Niko
Kein Support per DM!
_________________________
opsi support - uib gmbh
For productive opsi installations we recommend support contracts.

Benutzeravatar
SisterOfMercy
Beiträge: 908
Registriert: 22 Jun 2012, 19:18

Re: Building opsi-winst

Beitragvon SisterOfMercy » 11 Okt 2018, 14:37

n.wenselowski hat geschrieben:I moved the topic to the development subforum. Please use this in the future for topics like this!


Sorry, I hadn't seen it before.

Code: Alles auswählen

Compile Project, Mode: default, Target: winst32.exe: Exit code 1, Errors: 50, Warnings: 323, Hints: 188
osbatchgui.pas(117,15) Warning: An inherited method is hidden by "setVisible(Boolean);"
*snip*
osregistry.pas(521,3) Note: Local variable "dataType" not used
osregistry.pas(593,3) Note: Local variable "i" not used
osregistry.pas(594,3) Note: Local variable "dataType" not used
osregistry.pas(640,3) Note: Local variable "i" not used
osregistry.pas(641,3) Note: Local variable "dataType" not used
osconf.pas(170,10) Warning: Function result does not seem to be set
DSiWin32.pas(2551,16) Warning: Comparison might be always false due to range of constant and expression
DSiWin32.pas(2552,7) Warning: unreachable code
DSiWin32.pas(2568,16) Warning: Comparison might be always false due to range of constant and expression
DSiWin32.pas(2569,7) Warning: unreachable code
DSiWin32.pas(2636,19) Warning: Comparison might be always true due to range of constant and expression
DSiWin32.pas(3006,19) Warning: Implicit string type conversion from "AnsiString" to "WideString"
DSiWin32.pas(3007,22) Warning: Implicit string type conversion from "AnsiString" to "WideString"
DSiWin32.pas(3008,20) Warning: Implicit string type conversion from "AnsiString" to "WideString"
DSiWin32.pas(3053,22) Warning: Implicit string type conversion from "AnsiString" to "WideString"
DSiWin32.pas(3114,98) Error: Call by var for arg no. 3 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(3119,36) Warning: Local variable "hToken" does not seem to be initialized
DSiWin32.pas(3387,75) Error: Call by var for arg no. 3 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(3479,65) Warning: Local variable "defaulted" does not seem to be initialized
DSiWin32.pas(3615,76) Error: Call by var for arg no. 3 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(3643,88) Error: Call by var for arg no. 3 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(3644,76) Warning: Local variable "processAffinityMask" does not seem to be initialized
DSiWin32.pas(3734,85) Error: Call by var for arg no. 3 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(3736,40) Warning: Local variable "minWorkingSetSize" does not seem to be initialized
DSiWin32.pas(3737,40) Warning: Local variable "maxWorkingSetSize" does not seem to be initialized
DSiWin32.pas(3758,18) Warning: Conversion between ordinals and pointers is not portable
DSiWin32.pas(4042,29) Warning: Conversion between ordinals and pointers is not portable
DSiWin32.pas(4043,29) Warning: Conversion between ordinals and pointers is not portable
DSiWin32.pas(4093,45) Warning: Conversion between ordinals and pointers is not portable
DSiWin32.pas(4094,45) Warning: Conversion between ordinals and pointers is not portable
DSiWin32.pas(4311,73) Error: Call by var for arg no. 7 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(4317,72) Error: Call by var for arg no. 7 has to match exactly: Got "LongWord" expected "QWord"
DSiWin32.pas(5890,31) Warning: Symbol "GetTickCount" is deprecated: "Use GetTickCount64 instead"
DSiWin32.pas(6025,19) Error: Unknown identifier "EDI"
DSiWin32.pas(6025,19) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6026,19) Error: Unknown identifier "EBX"
DSiWin32.pas(6026,19) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6028,19) Error: Unknown identifier "EDI"
DSiWin32.pas(6028,24) Error: Unknown identifier "EAX"
DSiWin32.pas(6030,19) Error: Unknown identifier "EAX"
DSiWin32.pas(6030,24) Error: Assembler syntax error in operand
DSiWin32.pas(6030,25) Error: Unknown identifier "EDI"
DSiWin32.pas(6030,28) Error: Assembler syntax error in operand
DSiWin32.pas(6031,19) Error: Unknown identifier "EDX"
DSiWin32.pas(6031,24) Error: Assembler syntax error in operand
DSiWin32.pas(6031,25) Error: Unknown identifier "EDI"
DSiWin32.pas(6031,30) Error: Invalid constant expression
DSiWin32.pas(6031,30) Error: Invalid reference syntax
DSiWin32.pas(6031,30) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6032,1) Error: Unrecognized opcode
DSiWin32.pas(6032,1) Error: Assembler syntax error
DSiWin32.pas(6033,19) Error: Unknown identifier "ECX"
DSiWin32.pas(6033,24) Error: Unknown identifier "EDX"
DSiWin32.pas(6034,19) Error: Unknown identifier "EBX"
DSiWin32.pas(6034,24) Error: Unknown identifier "EAX"
DSiWin32.pas(6036,19) Error: Unknown identifier "EBX"
DSiWin32.pas(6036,24) Error: Invalid reference syntax
DSiWin32.pas(6036,24) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6037,19) Error: Unknown identifier "ECX"
DSiWin32.pas(6037,24) Error: Invalid reference syntax
DSiWin32.pas(6037,24) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6039,21) Error: Assembler syntax error in operand
DSiWin32.pas(6039,22) Error: Unknown identifier "EDI"
DSiWin32.pas(6039,25) Error: Assembler syntax error in operand
DSiWin32.pas(6040,19) Error: Assembler syntax error in operand
DSiWin32.pas(6040,20) Error: Assembler syntax error in operand
DSiWin32.pas(6040,21) Error: Invalid reference syntax
DSiWin32.pas(6043,19) Error: Unknown identifier "EAX"
DSiWin32.pas(6043,24) Error: Unknown identifier "EBX"
DSiWin32.pas(6044,19) Error: Unknown identifier "EDX"
DSiWin32.pas(6044,24) Error: Unknown identifier "ECX"
DSiWin32.pas(6046,19) Error: Unknown identifier "EBX"
DSiWin32.pas(6047,19) Error: Unknown identifier "EDI"
DSiWin32.pas(6054,19) Error: Unknown identifier "EDI"
DSiWin32.pas(6054,19) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6055,19) Error: Unknown identifier "EBX"
DSiWin32.pas(6055,19) Warning: No size specified and unable to determine the size of the operands, using DWORD as default
DSiWin32.pas(6057,19) Error: Unknown identifier "EDI"
DSiWin32.pas(6057,24) Error: Unknown identifier "EAX"
DSiWin32.pas(6059,19) Error: Unknown identifier "EAX"
DSiWin32.pas(6059,24) Error: Assembler syntax error in operand
DSiWin32.pas(6059,25) Error: Unknown identifier "EDI"
DSiWin32.pas(6059,28) Error: Assembler syntax error in operand


Just everything with DSiWin32.pas
Bitte schreiben Sie Deutsch, when I'm responding in the German-speaking part of the forum!

Benutzeravatar
d.oertel
Beiträge: 3255
Registriert: 04 Jun 2008, 14:27

Re: Building opsi-winst

Beitragvon d.oertel » 15 Okt 2018, 17:26

Hi,

install lazarus
e.g. (https://download.uib.de/opsi4.1/contrib ... 8.4-1.opsi)

Do not install any additional components in lazarus !
All you need is meanwhile included in our lazarus git repo.
Clone the lazarus repo (e.g. testing = opsi-winst/opsi-script (4.12.0.29) right now)
start lazarus
open lazarus\opsi-script\winst.lpi
run/build
ignore warnings (too much)
run/start

cheers
detlef
opsi support - uib gmbh

For productive opsi installations we recommend support contracts.
http://www.uib.de
http://www.opsi.org