Jump to content
Toosdey

Papyrus Compiler fix not working

Recommended Posts

I've searched other threads for the solution, and quite frankly they have only furthered my confusions.

 

-I am using Windows 10 86 bit.

-I installed Steam directly into my C:\ drive, since I have had issues with mod names being to long due to sub folders when installed into C:\Program Files (x86)

 

 

From what I understand, I need to type, in command prompts...

 

"C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools" CorFlags/32bit+ "C:/Steam/steamapps/common/Skyrim/Papyrus Compiler/PapyrusCompiler.exe"

 

 

However, when I try that, I get the following error message:

' "C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools" ' is not recognized as an internal or external command, operable program or batch file.

 

I have also attempted the following...

"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools" CorFlags\32bit+ "C:\Steam\steamapps\common\Skyrim\Papyrus Compiler\PapyrusCompiler.exe"

 

This results in the same error message.

Share this post


Link to post
Share on other sites

This part of the commandline:

"C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools"

refers to the path of your SDK that you installed earlier. You have probably installed another version and therefore "corflags.exe" will be somewhere else. Simply locate the file that your system has and point to that.

 

e.g. on my system I have a number of different SDKs installed and I can use the following paths:

"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin"
"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools"
"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools"

Share this post


Link to post
Share on other sites

All of the above plus

 

You are close

 

"C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools/CorFlags.exe" /32bit+ "C:/Steam/steamapps/common/Skyrim/PapyrusCompiler/PapyrusCompiler.exe"

 

---

There has to be a space between the corflags.exe and the /32bit+ which is a flag.

 

Alternately in a window cmd shell try

 

cd  "C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools/" 

coreflags.exe /32bit+ <file>

 

where in your case

 

coreflags.exe /32bit+ "C:/Steam/steamapps/common/Skyrim/PapyrusCompiler/PapyrusCompiler.exe"

 

All one line

 

You could also search for corflags.exe on your C drive. This should turn up a copy or three.

 

Sorry the last post contained two items jumbled togther. 

  • Upvote 1

Share this post


Link to post
Share on other sites

You are close

 

"C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools/CorFlags.exe" /32bit+ "C:/Steam/steamapps/common/Skyrim/PapyrusCompiler/PapyrusCompiler.exe"

 

---

There has to be a space between the corflags.exe and the /32bit+ which is a flag.

 

Alternately in a window cmd shell try

 

cd  "C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6 Tools/" 

coreflags.exe 32bit+ <file>

 

where in your case

 

coreflags.exe /32bit+ "C:/Steam/steamapps/common/Skyrim/PapyrusCompiler/PapyrusCompiler.exe"

 

You could also search for corflags.exe on your C drive. This should turn up a copy or three.

 

Sorry the last post contained two items jumbled togther. 

 

 

For the first one you gave me, it made progress. Corflags comes up in cmd prompt, however, /32bit+ isn't an option. Available options are...

 

/ILONLY+ /ILONLY-           Sets/clears the ILONLY flag
/32BITREQ+ /32BITREQ-   Sets/clears the bits indicating 32-bit x86 only
/32BITPREF+ /32BITPREF- Sets/clears the bits indicating 32-bit preferred
/UpgradeCLRHeader          Upgrade the CLR Header to version 2.5
/RevertCLRHeader             Revert the CLR Header to version 2.0
/Force                              Force an assembly update even if the image is
                                       strong name signed.
                                       WARNING: Updating a strong name signed assembly
                                       will require the assembly to be resigned before
                                       it will execute properly.
/nologo                            Prevents corflags from displaying logo
 
I would try the others you recommended as well, but I don't know what a window command shell is. =/
Edited by Toosdey

Share this post


Link to post
Share on other sites

I'm also having a problem with this fix every time i try i get this error

 

corflags : error CF001 : Could not open file for writing

 

Anybody know what could possibly be wrong?

 

I know I have everything installed right and where it all should be and still not working.

  • Upvote 1

Share this post


Link to post
Share on other sites

There's a number of reasons why that would happen:

  • permissions would be where I'd look first
  • read only attributes on the compiler is another

Share this post


Link to post
Share on other sites

Use /32bitreq+ instead. The /32bit+ switch was supported on older versions of corflags. The latest version introduced the 32-bit preferred setting (/32bitpref+) so changed the 32-bit required flag to /32bitreq+ to differentiate the two.
 

corflags.exe /32bitreq+ "C:/Steam/steamapps/common/Skyrim/PapyrusCompiler/PapyrusCompiler.exe"
  • Upvote 1

Share this post


Link to post
Share on other sites

 

Use /32bitreq+ instead. The /32bit+ switch was supported on older versions of corflags. The latest version introduced the 32-bit preferred setting (/32bitpref+) so changed the 32-bit required flag to /32bitreq+ to differentiate the two.

 

corflags.exe /32bitreq+ "C:/Steam/steamapps/common/Skyrim/PapyrusCompiler/PapyrusCompiler.exe"

Very handy to know, thanks for that. Any chance you can point to the link for that description from MS?

Share this post


Link to post
Share on other sites

To be honest, this was somewhat of a surprise to me as well. If you check the CorFlags documentation on MSDN, you'll see that the options are described as /32BIT[REQ]+ and this seems to imply the intention is that either /32BIT+ or /32BITREQ+ perform the same function and I took this at face value. When Toosdey reported this issue yesterday, I ran various versions of corflags and discovered that the error is exactly right... the 10.0 version does not recognize /32BIT+ as a valid option. I do not know if this breaking change was introduced intentionally, but the documentation seems to imply it should accept /32BIT+ as a backwards-compatible option.

 

EDIT: How to interpret the CorFlag flags? discusses this as well.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.