Can't install a modified assembly in Global Assembly Cache
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
Using dnSpy assembly editor I modified a copyrighted IBM assembly (DLL). I fixed a bug in the source code. After compiling the code back to a DLL, I tried to install it into the GAC.
But during this, InstallAssembly threw the following error:
InstallAssembly failed with error -2146234299
Anyone knows what this means? Thanks for any help!
EDIT
On docs.microsoft.com I can see that -2146234299 means FusionErrorSignatureCheckFailed. So it is not possible for me to modify the DLL?
.net-assembly dnspy
add a comment |
Using dnSpy assembly editor I modified a copyrighted IBM assembly (DLL). I fixed a bug in the source code. After compiling the code back to a DLL, I tried to install it into the GAC.
But during this, InstallAssembly threw the following error:
InstallAssembly failed with error -2146234299
Anyone knows what this means? Thanks for any help!
EDIT
On docs.microsoft.com I can see that -2146234299 means FusionErrorSignatureCheckFailed. So it is not possible for me to modify the DLL?
.net-assembly dnspy
add a comment |
Using dnSpy assembly editor I modified a copyrighted IBM assembly (DLL). I fixed a bug in the source code. After compiling the code back to a DLL, I tried to install it into the GAC.
But during this, InstallAssembly threw the following error:
InstallAssembly failed with error -2146234299
Anyone knows what this means? Thanks for any help!
EDIT
On docs.microsoft.com I can see that -2146234299 means FusionErrorSignatureCheckFailed. So it is not possible for me to modify the DLL?
.net-assembly dnspy
Using dnSpy assembly editor I modified a copyrighted IBM assembly (DLL). I fixed a bug in the source code. After compiling the code back to a DLL, I tried to install it into the GAC.
But during this, InstallAssembly threw the following error:
InstallAssembly failed with error -2146234299
Anyone knows what this means? Thanks for any help!
EDIT
On docs.microsoft.com I can see that -2146234299 means FusionErrorSignatureCheckFailed. So it is not possible for me to modify the DLL?
.net-assembly dnspy
.net-assembly dnspy
edited Jan 5 at 12:34
Ozkan
asked Jan 4 at 9:06
OzkanOzkan
1,79742450
1,79742450
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
I'm very glad you're not able to do this 🤓. This is exactly what's intended:
Assemblies deployed in the Global Assembly Cache must have a strong name. When an assembly is added to the Global Assembly Cache, integrity checks are performed on all files that make up the assembly. The cache performs these integrity checks to ensure that an assembly has not been tampered with, for example, when a file has changed but the manifest does not reflect the change.
Source: Global Assembly Cache
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing onILlevel? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...
– Ozkan
Jan 4 at 9:46
1
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
add a comment |
If you modify an assembly, its signature will no longer be valid.
You would have to create a new signature for it, but you won't be able to do that because you don't have access to the private key that IBM used when they created the original signature.
So I'm afraid you're out of luck.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54035849%2fcant-install-a-modified-assembly-in-global-assembly-cache%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
I'm very glad you're not able to do this 🤓. This is exactly what's intended:
Assemblies deployed in the Global Assembly Cache must have a strong name. When an assembly is added to the Global Assembly Cache, integrity checks are performed on all files that make up the assembly. The cache performs these integrity checks to ensure that an assembly has not been tampered with, for example, when a file has changed but the manifest does not reflect the change.
Source: Global Assembly Cache
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing onILlevel? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...
– Ozkan
Jan 4 at 9:46
1
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
add a comment |
I'm very glad you're not able to do this 🤓. This is exactly what's intended:
Assemblies deployed in the Global Assembly Cache must have a strong name. When an assembly is added to the Global Assembly Cache, integrity checks are performed on all files that make up the assembly. The cache performs these integrity checks to ensure that an assembly has not been tampered with, for example, when a file has changed but the manifest does not reflect the change.
Source: Global Assembly Cache
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing onILlevel? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...
– Ozkan
Jan 4 at 9:46
1
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
add a comment |
I'm very glad you're not able to do this 🤓. This is exactly what's intended:
Assemblies deployed in the Global Assembly Cache must have a strong name. When an assembly is added to the Global Assembly Cache, integrity checks are performed on all files that make up the assembly. The cache performs these integrity checks to ensure that an assembly has not been tampered with, for example, when a file has changed but the manifest does not reflect the change.
Source: Global Assembly Cache
I'm very glad you're not able to do this 🤓. This is exactly what's intended:
Assemblies deployed in the Global Assembly Cache must have a strong name. When an assembly is added to the Global Assembly Cache, integrity checks are performed on all files that make up the assembly. The cache performs these integrity checks to ensure that an assembly has not been tampered with, for example, when a file has changed but the manifest does not reflect the change.
Source: Global Assembly Cache
answered Jan 4 at 9:31
rickvdboschrickvdbosch
4,37121727
4,37121727
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing onILlevel? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...
– Ozkan
Jan 4 at 9:46
1
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
add a comment |
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing onILlevel? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...
– Ozkan
Jan 4 at 9:46
1
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing on
IL level? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...– Ozkan
Jan 4 at 9:46
Do you know any workaround for this? (except raising a ticket at IBM). Like for example, editing on
IL level? I know this is more 'hacking' but I just want to know if there is a way, because I found the bug in the IBM code and I'm really close to fix this...– Ozkan
Jan 4 at 9:46
1
1
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
What you can do is write a wrapper for the IBM assembly you can use from your own code. This doesn't allow you to edit the IBM assembly, it does enable you to modify the resulting behavior. Changing the IBM assembly that's installed in the GAC is not an option.
– rickvdbosch
Jan 4 at 9:48
add a comment |
If you modify an assembly, its signature will no longer be valid.
You would have to create a new signature for it, but you won't be able to do that because you don't have access to the private key that IBM used when they created the original signature.
So I'm afraid you're out of luck.
add a comment |
If you modify an assembly, its signature will no longer be valid.
You would have to create a new signature for it, but you won't be able to do that because you don't have access to the private key that IBM used when they created the original signature.
So I'm afraid you're out of luck.
add a comment |
If you modify an assembly, its signature will no longer be valid.
You would have to create a new signature for it, but you won't be able to do that because you don't have access to the private key that IBM used when they created the original signature.
So I'm afraid you're out of luck.
If you modify an assembly, its signature will no longer be valid.
You would have to create a new signature for it, but you won't be able to do that because you don't have access to the private key that IBM used when they created the original signature.
So I'm afraid you're out of luck.
answered Jan 4 at 9:17
mbjmbj
653314
653314
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54035849%2fcant-install-a-modified-assembly-in-global-assembly-cache%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown