Skip to content

Conversation

@psinnathurai
Copy link

Added note about Unicode smart quotes causing parsing errors in Custom Script Extensions.

Added note about Unicode smart quotes causing parsing errors in Custom Script Extensions.
@prmerger-automator
Copy link
Contributor

@psinnathurai : Thanks for your contribution! The author(s) and reviewer(s) have been notified to review your proposed change.

@learn-build-service-prod
Copy link
Contributor

Learn Build status updates of commit 18c05ae:

✅ Validation status: passed

File Status Preview URL Details
articles/virtual-machines/extensions/custom-script-windows.md ✅Succeeded

For more details, please refer to the build report.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds clarifying documentation about Unicode character handling in the Custom Script Extension for Windows. The addition warns users about a common pitfall where Unicode smart quotes can cause parsing errors that may not be obvious in text editors.

Key Changes

  • Added a new bullet point in the Tips section explaining that Unicode smart quotes (U+201C and U+201D) cause parsing errors
  • Recommends using standard ASCII double quotes and avoiding special Unicode characters in scripts and output messages

- The Custom Script Extension runs under the `LocalSystem` account.
- If you plan to use the `storageAccountName` and `storageAccountKey` properties, these properties must be collocated in `protectedSettings`.
- You can have only one version of an extension applied to the VM. To run a second custom script, you can update the existing extension with a new configuration. Alternatively, you can remove the custom script extension and reapply it with the updated script
- Custom Script Extrensions interpret Unicode "smart quotes" (U+201C and U+201D) as corrupted characters, causing parsing errors even when the file appears correct in your editor. Always use standard ASCII double quotes (") in your scripts. Avoid special Unicode characters like ✓ and ⚠ in output messages.
Copy link

Copilot AI Nov 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spelling error: "Extrensions" should be "Extensions".

Suggested change
- Custom Script Extrensions interpret Unicode "smart quotes" (U+201C and U+201D) as corrupted characters, causing parsing errors even when the file appears correct in your editor. Always use standard ASCII double quotes (") in your scripts. Avoid special Unicode characters like ✓ and ⚠ in output messages.
- Custom Script Extensions interpret Unicode "smart quotes" (U+201C and U+201D) as corrupted characters, causing parsing errors even when the file appears correct in your editor. Always use standard ASCII double quotes (") in your scripts. Avoid special Unicode characters like ✓ and ⚠ in output messages.

Copilot uses AI. Check for mistakes.
- Ensure you don't have any custom setting in the registry key `HKLM\SOFTWARE\Microsoft\Command Processor\AutoRun` (*detailed [here](/windows-server/administration/windows-commands/cmd)*). This would trigger during the Custom Script Extension install or enable phases and cause an error like `'XYZ is not recognized as an internal or external command, operable program or batch file'`.
- The Custom Script Extension runs under the `LocalSystem` account.
- If you plan to use the `storageAccountName` and `storageAccountKey` properties, these properties must be collocated in `protectedSettings`.
- You can have only one version of an extension applied to the VM. To run a second custom script, you can update the existing extension with a new configuration. Alternatively, you can remove the custom script extension and reapply it with the updated script
Copy link

Copilot AI Nov 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The bullet point is missing a period at the end. According to Microsoft Writing Style Guide, complete sentences in list items should end with proper punctuation.

Suggested change
- You can have only one version of an extension applied to the VM. To run a second custom script, you can update the existing extension with a new configuration. Alternatively, you can remove the custom script extension and reapply it with the updated script
- You can have only one version of an extension applied to the VM. To run a second custom script, you can update the existing extension with a new configuration. Alternatively, you can remove the custom script extension and reapply it with the updated script.

Copilot uses AI. Check for mistakes.
- The Custom Script Extension runs under the `LocalSystem` account.
- If you plan to use the `storageAccountName` and `storageAccountKey` properties, these properties must be collocated in `protectedSettings`.
- You can have only one version of an extension applied to the VM. To run a second custom script, you can update the existing extension with a new configuration. Alternatively, you can remove the custom script extension and reapply it with the updated script
- Custom Script Extrensions interpret Unicode "smart quotes" (U+201C and U+201D) as corrupted characters, causing parsing errors even when the file appears correct in your editor. Always use standard ASCII double quotes (") in your scripts. Avoid special Unicode characters like ✓ and ⚠ in output messages.
Copy link

Copilot AI Nov 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the custom coding guidelines, this content appears to be AI-assisted or AI-generated. The file should include an ai-usage metadata entry in the front matter (either ai-usage: ai-generated or ai-usage: ai-assisted depending on the level of AI involvement). Since this is adding technical documentation content about Unicode handling, consider adding this metadata.

Copilot generated this review using guidance from repository custom instructions.
@ttorble
Copy link
Contributor

ttorble commented Nov 27, 2025

@GabstaMSFT

Can you review the proposed changes?

IMPORTANT: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@prmerger-automator prmerger-automator bot added the aq-pr-triaged C+L Pull Request Review Team label label Nov 27, 2025
@github-actions
Copy link

This pull request has been inactive for at least 14 days. If you are finished with your changes, don't forget to sign off. See the contributor guide for instructions.
Get Help
Docs Support Teams Channel
Resolve Merge Conflict

@github-actions github-actions bot added the inactive This PR is inactive for more than 14 days label Dec 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants