# Resource.rc - no Version Info in Properties of VST3 binary file, unlike VST?

**URL:** <https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314>\
**Category:** Windows\
**Created:** [May 5, 2022, 2:34pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314 "2022-05-05T14:34:15Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![stephenk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/stephenk/32/15198_2.png) [@stephenk](https://forum.juce.com/u/stephenk)\
**Post date:** [May 5, 2022, 2:34pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/1 "2022-05-05T14:34:15Z")

</div>

I have a VS2019 project (from Projucer) that creates both a VST and a VST3.  
I also have a GUI App version of the same project.

Is it normal and expected that the VST3 binary does not use the version info from the resource.rc file that is created by the Projucer, in the Properties \> Details tab?

Application .exe:

 ![exe](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/3/382856deb0c834395390ef9e930ba68a39c35f48.png)

VST .dll:

 ![dll](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/9/9a4b376e0c5240de9d57be5fe090b15b8c923380.png)

VST3 .vst3:

 ![vst3](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/2/2662038e3d7ed2a2207c16658f2795d0734da033.png)

resource.rc (generated by Projucer):

```auto
#pragma code_page(65001)

#ifdef JUCE_USER_DEFINED_RC_FILE
 #include JUCE_USER_DEFINED_RC_FILE
#else

#undef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#include <windows.h>

VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,2,3,4
BEGIN
  BLOCK "StringFileInfo"
  BEGIN
    BLOCK "040904E4"
    BEGIN
      VALUE "CompanyName", "MyCompany\0"
      VALUE "FileDescription", "MyPlugin\0"
      VALUE "FileVersion", "1.2.3.4\0"
      VALUE "ProductName", "MyPlugin\0"
      VALUE "ProductVersion", "1.2.3.4\0"
    END
  END

  BLOCK "VarFileInfo"
  BEGIN
    VALUE "Translation", 0x409, 1252
  END
END

#endif

```

Is this just a Windows “thing”?

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [May 5, 2022, 3:11pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/2 "2022-05-05T15:11:05Z")

</div>

Are you definitely looking at the properties of the VST3 binary, and not the enclosing VST3 bundle?

VST3s generated by JUCE on Windows have a directory structure. The outer ‘vst3’ is actually a folder, and the plugin shared library is located at `theplugin.vst3/Contents/arch/theplugin.vst3`.

---

<div class="post-metadata">

**Author:** ![stephenk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/stephenk/32/15198_2.png) [@stephenk](https://forum.juce.com/u/stephenk)\
**Post date:** [May 5, 2022, 4:15pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/3 "2022-05-05T16:15:40Z")

</div>

@reuk -Thanks, I did not know that!

I am looking at the .vst3 in the builds…/VST3 folder.

How does one view inside a “bundle” on Windows? On Mac, you have “Show Package Contents”.

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [May 5, 2022, 4:58pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/4 "2022-05-05T16:58:12Z")

</div>

I think the bundle should still be listed as a ‘file folder’ in the Explorer window. If it isn’t, you may be looking at the actual binary after all.

---

<div class="post-metadata">

**Author:** ![stephenk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/stephenk/32/15198_2.png) [@stephenk](https://forum.juce.com/u/stephenk)\
**Post date:** [May 5, 2022, 5:26pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/5 "2022-05-05T17:26:21Z")

</div>

@reuk - this is what I am seeing:

 ![folder2](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/e/e3f8f9635bec0337ba694771911a29b82eaa803c.png)

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [May 5, 2022, 5:39pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/6 "2022-05-05T17:39:38Z")

</div>

I think the set of visible fields might change depending on the file extension. If you rename the file to “MyPlugin-DB.dll” and then reopen the properties window, do you see the expected details?

---

<div class="post-metadata">

**Author:** ![stephenk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/stephenk/32/15198_2.png) [@stephenk](https://forum.juce.com/u/stephenk)\
**Post date:** [May 5, 2022, 6:01pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/7 "2022-05-05T18:01:18Z")

</div>

Yes! That’s odd. So I guess it’s a Windows thing. Just wanted to make sure I was getting the expected results - I’m mainly a Mac user.

---

<div class="post-metadata">

**Author:** ![dhealey](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/dhealey/32/13365_2.png) [@dhealey](https://forum.juce.com/u/dhealey)\
**Post date:** [May 8, 2022, 12:38am UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/8 "2022-05-08T00:38:14Z")

</div>

> [@reuk](#):
>
> VST3s generated by JUCE on Windows have a directory structure. The outer ‘vst3’ is actually a folder, and the plugin shared library is located at `theplugin.vst3/Contents/arch/theplugin.vst3` .

Do you have to do something to enable this? I’m exporting plugins built with HISE using the latest VST3 SDK and they are coming out as single files on Windows.

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [May 8, 2022, 2:13pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/9 "2022-05-08T14:13:26Z")

</div>

Sorry, I’d misremembered. VST3s use the bundle structure when building with CMake, but Projucer still generates single-dll builds. I’ll add a backlog item to add VST3 bundle support to the Projucer.

---

<div class="post-metadata">

**Author:** ![dhealey](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/dhealey/32/13365_2.png) [@dhealey](https://forum.juce.com/u/dhealey)\
**Post date:** [May 8, 2022, 3:00pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/10 "2022-05-08T15:00:11Z")

</div>

Aha that explains it, thanks for the info.

---

<div class="post-metadata">

**Author:** ![dhealey](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/dhealey/32/13365_2.png) [@dhealey](https://forum.juce.com/u/dhealey)\
**Post date:** [May 8, 2022, 5:41pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/11 "2022-05-08T17:41:10Z")

</div>

I just tried running a cmake build I’m still getting the single file output - I assume this is because I used a tool to convert the .jucer to a cmake list rather than doing it manually. Is there anything I can do to mod my jucer file or the output from Projucer to give me the bundle output until this is officially supported by Projucer? Thanks

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [May 9, 2022, 7:37pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/12 "2022-05-09T19:37:55Z")

</div>

Are you using the CMake support from JUCE 6, or an external solution (e.g. FRUT)?

---

<div class="post-metadata">

**Author:** ![dhealey](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/dhealey/32/13365_2.png) [@dhealey](https://forum.juce.com/u/dhealey)\
**Post date:** [May 9, 2022, 7:51pm UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/13 "2022-05-09T19:51:11Z")

</div>

FRUT I think though I can just make the bundle manually, create the folder structure etc.

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [May 10, 2022, 9:23am UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/14 "2022-05-10T09:23:57Z")

</div>

FRUT’s `Jucer2CMake` tool also allows you to convert a Projucer project to a juce6 CMake project by passing the `juce6` argument. That might be more straightforward than creating the bundle manually.

---

<div class="post-metadata">

**Author:** ![dhealey](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/dhealey/32/13365_2.png) [@dhealey](https://forum.juce.com/u/dhealey)\
**Post date:** [May 10, 2022, 9:51am UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/15 "2022-05-10T09:51:08Z")

</div>

Ah thanks, I didn’t know about that argument, I’ll give it a try

---

<div class="post-metadata">

**Author:** ![jimc](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/jimc/32/16067_2.png) [@jimc](https://forum.juce.com/u/jimc)\
**Post date:** [July 19, 2023, 7:06am UTC](https://forum.juce.com/t/resource-rc-no-version-info-in-properties-of-vst3-binary-file-unlike-vst/51314/16 "2023-07-19T07:06:29Z")

</div>

Just to follow up on this, we aren’t getting a VERSIONINFO resource in our VST3 built with the JUCE CMake system. The Version is blank. Is this definitely implemented?

I’ve got this in my artefacts folder

```auto
#pragma code_page(65001)

#ifdef JUCE_USER_DEFINED_RC_FILE
 #include JUCE_USER_DEFINED_RC_FILE
#else

#undef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#include <windows.h>

VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,31,0
BEGIN
  BLOCK "StringFileInfo"
  BEGIN
    BLOCK "040904E4"
    BEGIN
      VALUE "CompanyName", "Devious Machines\0"
      VALUE "FileDescription", "Multiband X6\0"
      VALUE "FileVersion", "1.0.31\0"
      VALUE "ProductName", "Multiband X6\0"
      VALUE "ProductVersion", "1.0.31\0"
    END
  END

  BLOCK "VarFileInfo"
  BEGIN
    VALUE "Translation", 0x409, 1252
  END
END

#endif

```

But it’s not making it to my VST3 binary. Let me check you’ve not fixed this.

edit: looks like my VST has no version information either :(. Am I expecting the .res file to be attached to the link.exe command line - because it isn’t.

Ah - I see, there’s a patch here: [CMake: Windows Resource.rc file for plugin and console targets - #4 by reuk](https://forum.juce.com/t/cmake-windows-resource-rc-file-for-plugin-and-console-targets/55398/4)
