MiniGunDad 0 Posted June 28, 2011 (edited) I'm intending to write a program that will extract, edit & create PBO's however i haven't got a scooby on how the actual PBO file is constructed :confused: i have read that it is made up of three sections; a header contiguous data block - all the script files etc a four byte simple accumulative checksum I assume it's then combined like a CAB file or something like that and I presume it is not just a hash of a text file as the header part does not look text'ish! If someone could explain how to combine the necessary files into one packaged file - the pbo - i would be extremely greatful and possibly dance like a banana Ok i have devloped the simple program and it can be downloaded here MGD_Pbo.zip Any feedback greatly apprieciated :bounce3: And i have updated it (25 Nov 2011) with some minor amendments - but as i've had no feedback i wonder if i'm talking to myself :lookaround: Minor update to deal with UAC Settings (7th Dec 2011) Minor update to improve UI (20th Dec 2012) Edited December 20, 2012 by MiniGunDad Update Share this post Link to post Share on other sites
MiniGunDad 0 Posted July 11, 2011 Ok - no response :( Time to get geeky; On reflection i suppose i can reference the Pbo.dll in say VB Net and access it's processes - so my question now is: what are the 'commands/functions' in the dll that i need to access? Share this post Link to post Share on other sites
Leopotam 10 Posted July 11, 2011 1. http://community.bistudio.com/wiki/PBO 2. This subforum for released tools, not for questions about something. Share this post Link to post Share on other sites
mikero 79 Posted July 11, 2011 url above documents the structure of a pbos (there are several variants) i think you are referring to DePbo.dll http://dev-heaven.net/projects/mikero-pbodll/files the API headers you are looking for are in the repository section. the code is *very* robust, *very* stable and covers all engines from ofp demo to extants of vbs2 lite. contact me: mikero@norfolk.nf, or skype Mike.Andrew if you want further assistance. Share this post Link to post Share on other sites
MiniGunDad 0 Posted July 11, 2011 1. http://community.bistudio.com/wiki/PBO I think that is what my first post was about! 2. This subforum for released tools, not for questions about something. Sorry did not know which catergory/forum to put it in. ---------- Post added at 10:28 AM ---------- Previous post was at 10:23 AM ---------- url above documents the structure of a pbos (there are several variants) i think you are referring to DePbo.dll http://dev-heaven.net/projects/mikero-pbodll/files the API headers you are looking for are in the repository section. the code is *very* robust, *very* stable and covers all engines from ofp demo to extants of vbs2 lite. contact me: mikero@norfolk.nf, or skype Mike.Andrew if you want further assistance. Yup DePbo.dll. The link takes me to a list of various files most of which are pbo utilities. The repository page just has links to revision history of something or other. I think i'm missing the plot here or my question was misread so i'll email you. Share this post Link to post Share on other sites
Leopotam 10 Posted July 11, 2011 MiniGunDad, Mikero's pbo.dll export C++ classes, not plain functions. If you want to make managed (vb.net, for ex.) wrapper, you must create mixed assembly (ManagedC++ + C# / VB.Net). If you dont want to f**ck your brain with interop-wrappers, you can take this: http://dev-heaven.net/projects/tdt Share this post Link to post Share on other sites
MiniGunDad 0 Posted July 11, 2011 Leopotam, thanks for the info. Hmmm seems this is a little more in-depth than i first thought. "Managed Wrappers" that is deep and i'm not to good with c++ though a revisit wont hurt :D I had a quick look at T_D Tools but again not much info on the dll functions. Think i'll do some more research on the web and see what gives. Thanks again. Share this post Link to post Share on other sites
Leopotam 10 Posted July 11, 2011 "T_D Tools" - pure .net managed assemblies. You can analyze public api with "Reflector" or "IL Spy". Share this post Link to post Share on other sites
.kju 3245 Posted July 11, 2011 You can also check: Mac.Arma .net Assembly Share this post Link to post Share on other sites
MiniGunDad 0 Posted July 11, 2011 Leopotam: I've used Reflector before - but don't really want to hack into somones work. Would prefer code etc given freely and expalined just like Mac.ArmA.Net. which is more like what i wanted. Thanks for the link PvPscene and i see Leopotam you had a hand in some fixes to the assembly. So thank you again. I'll research and see if i can get some code working - will post with results. Share this post Link to post Share on other sites
mikero 79 Posted July 13, 2011 ****anyone**** who wants to put a .net wrapper around my code PLEASE feel free to do so. I'll bundle it into the dll project and publish it at dev heaven with all due credit to the author Share this post Link to post Share on other sites
MiniGunDad 0 Posted July 21, 2011 Ok I’ve created the simple program which; • Creates a Pbo from a mission folder - does not check for files or validity • Extracts from Pbo all files to a folder. Simple I know but that was my intention. It utilizes Mac.ArmA.net (many thanks to ‘sbsmac’) and requires the user to have Net Framework 4 installed. It should work on any OS (XP Onwards) and with both 32Bit & 64Bit. However, I have only tested it on the following so can only confirm these; Win 7 Pro 32Bit Win 7 Ultimate 64Bit Vista Home 32Bit Win XP 32Bit If anyone would like a copy please let me know. Share this post Link to post Share on other sites
Leopotam 10 Posted July 22, 2011 MiniGunDad, you can update first topic with link to actual version of your tool. Share this post Link to post Share on other sites
MiniGunDad 0 Posted November 25, 2011 Just a quick note to say i've made some improvements to my Pbo Tool - download is on first thread. Share this post Link to post Share on other sites
mikero 79 Posted November 26, 2011 I applaud your efforts. it's a great learning curve into the bis world full access to depbo.dll source code is here http://www.dev-heaven.net/projects/mikero-pbodll/repository/show/trunk/DePbo At some stage i'll get round to updating the code from c++ to .net/mondo. but if you want to be the person to do so, feel free. Share this post Link to post Share on other sites
t_d 47 Posted November 27, 2011 Your dll .NET compatible would be super awesome!!! And it is called Mono ;) Share this post Link to post Share on other sites