Here you can see some design and size examples of our multi-dynamic QR codes.

The QR codes lead to a landing page. There is also a maintenance tool.
The site is made with mod harbor.

Best regards,
Otto
Code: Select all | Expand
function cFileNoPath( cPathMask ) // returns just the filename no path
local n := RAt( "\", cPathMask )
return If( n > 0 .and. n < Len( cPathMask ),;
Right( cPathMask, Len( cPathMask ) - n ),;
If( ( n := At( ":", cPathMask ) ) > 0,;
Right( cPathMask, Len( cPathMask ) - n ),;
cPathMask ) )
Code: Select all | Expand
cEnv := HB_GETENV( 'PRGPATH' ) // Obtains a system environmental setting
cPrgWithPath := AP_FileName() // returns the filename.prg provided to Apache by the client inclusive path
cProgram := '"'+STRTRAN( cPrgWithPath, cEnv + "/" )+'"'