|
Post by fidokomik on Jun 14, 2005 13:48:01 GMT -5
I'm able to create executable file with password access on Windows. Yes, but I have all needed files, I have some *.apb project file but I want to create windows executable file on Linux (web server) with password access to run it. You use UPX for packing and UPX is multi-platform Can you write some Linux command line compiler for Linux? What I want: Visitor go to my web pages. Here he see some APB application for download. But I want to pay for this download My idea is, that I recompile APB project with a new password on Linux server and server send this new compilation to visitor and mail him some payment information (invoice). If I will have money on my account I send password to visitor via e-mail. What you mean about?
|
|
|
Post by Murariu Alexandru on Jun 21, 2005 9:24:35 GMT -5
Quote: "Can you write some Linux command line compiler for Linux?"
Do you mean you want to run APB projects on Linux? You can't, beacause APB is for Windows ONLY!
|
|
|
Post by fidokomik on Jun 21, 2005 21:21:24 GMT -5
Quote: "Can you write some Linux command line compiler for Linux?" Do you mean you want to run APB projects on Linux? You can't, beacause APB is for Windows ONLY! Oh no I want to create password protected EXE for Windows on Linux server. Some like this: apbcreate -o /tmp/startup.exe -s /var/tmp/myproject.apb -p password where -o is output EXE file -s is source *.apb file created on Windows and this is path to other needed files in project too -p is password for EXE file to run on user's PC I want to create APB project file on Windows PC, put this *.apb and all needed files to Linux and compile EXE here (with user password). Sorry for my bad English
|
|
|
Post by Murariu Alexandru on Jun 22, 2005 10:47:40 GMT -5
First of all I must tell you, I think you make confusions.
Quote: "I want to create password protected EXE for Windows on Linux server."
APB doesn't even create password protected EXE on Windows. The password protection from menu "File - Password protect" applies only to the .apb file. When you export the project, the apb file (with password) is appended to the end of the exe player.
At the moment, the password is only a very very small protection designed to prevent users that don't know it to open the file in APB. Thus since the project is NOT encrypted, and since APB source code is available to everyone it would not be difficult for someone to gain access to your project using reverse engineering.
So you can make your project on Windows (.apb with password), export it as single file, then put it on the Linux server for download, and give your password to whom you want (with that password they will be able to extract the project and open it in APB).
|
|
|
Post by fidokomik on Jun 22, 2005 16:37:08 GMT -5
First of all I must tell you, I think you make confusions. APB doesn't even create password protected EXE on Windows. The password protection from menu "File - Password protect" applies only to the .apb file. When you export the project, the apb file (with password) is appended to the end of the exe player. At the moment, the password is only a very very small protection designed to prevent users that don't know it to open the file in APB. Thus since the project is NOT encrypted, and since APB source code is available to everyone it would not be difficult for someone to gain access to your project using reverse engineering. Plain truth I wasn't test the password protection before I sent message to forum But my appetite for password protected EXE persist I'm programmer too (in other language) and if I understand right, the running is something like this: 1) EXE file is decompressed into memory 2) decompresor run your APB code 3) APB open EXE file and read from script begin offset and 4) run the script. Maybe between 3) and 4) you can to test if script is password protected and if is, you can ask user for password. Yes, this is very little protection, but how many BFUs are able to go round this? My real project contain some pdf files. If I put these files as embedded into project, BFU have a little chance to copy these files to another computer.
|
|
|
Post by Murariu Alexandru on Jun 24, 2005 6:36:38 GMT -5
Let me see if I understand right: You want this limited protection to apply also to the player, so that if protected with password, the player asks user for it and if doesn't know it, it stops running. If so, then this will be a very simple and very insecure solution. Here is another, better solution. Why not use an encrypted setup (which contains your pdf files) made with Inno Setup (it is FREEWARE). www.innosetup.com/Here's a sample Inno Setup project: [Setup] AppName=dummy AppVerName=dummy DefaultDirName={tmp} OutputBaseFilename=pdfs Password=somepassword Encryption=yes Compression=lzma SolidCompression=yes Uninstallable=no
[Languages] Name: "eng"; MessagesFile: "compiler:Default.isl"
[Files] Source: "C:\some.pdf"; DestDir: "{app}"; Flags: ignoreversion
Here's how to use from your APB project procedure Form1OnCreate(Sender: TObject); var PASS : string; EC : Integer; begin if not InputQuery('Password Required', 'Please enter password:', PASS) then application.terminate; FileExecEx(RepConst('"%EMBEDDED%\pdfs.exe" "/PASSWORD='+PASS+'" "/DIR='+RepConst('%EMBEDDED%\PDFS')+'" "/VERYSILENT"'), False, True, EC); if EC <> 0 then application.terminate; end;
procedure Button1OnClick(Sender: TObject); var E : integer; begin ShellExec(RepConst('%EMBEDDED%\PDFS\some.pdf'), '', '', SW_SHOWNORMAL, E); end;
Well with this solution NO "BFUs are able to go round this". Only who knows the password can see your PDF files.
|
|
|
Post by fidokomik on Jun 24, 2005 14:49:26 GMT -5
Let me see if I understand right: You want this limited protection to apply also to the player, so that if protected with password, the player asks user for it and if doesn't know it, it stops running. If so, then this will be a very simple and very insecure solution. Thank you for samples of solutions but this still not resolve my problem. I want unique password for every applications. In other word if I create 100 copies of the same application for 100 users, I must have 100 different passwords. For this I must "compile" final EXE file on Linux from APB sources. I want to emulate "Project -> Export" function on Linux machine. Or if is possible to create final EXE by concate your Player and my *.APB and other my files and compress this, please send me how to do. Or if you have interest about my very simple bud very quick and relatively secure crypting method, I may send you the description via mail. My method is for plain text files only (for APB script). I finish translating of APB Czech language file too
|
|