Script to create a VM and assign IP
How can I make this script asks the user for the information of the intellectual property and assign the address IP once the tools of the virtual machine is running. Before I added the part of network configuration, this script would be correctly query the user and deploy virtual computer.
#Create the VM #.
#$vcenter = Read-Host "what your name vCenter?
$vcenter = Read-Host "vCenter name.
# $cred = get-Credential
$DomainUser = "domain\administrator".
$DomainPWord = ConvertTo-SecureString-String "Password" - AsPlainText-Force
$VMDomainCredential = new-Object - TypeName System.Management.Automation.PSCredential - ArgumentList $DomainUser. $DomainPWord
$VMName = Read-Host "name VM.
$TemplateName = "2012R2".
$OSSpecName = "New Server".
$DatastoreCluster = Read-Host "Datastore Cluster name?"
$VMhostCluster = Read-Host "Cluster name?
#$FolderName = "VM".
# Run script #.
# Connect to vCenter #.
If ($cred - eq $null) {}
SE connect-VIServer $vcenter
} else {}
to connect-VIServer $vcenter - Credential $cred
}
# Compile new VM Info #.
$Template = get-Template-name $TemplateName
$OSSSpecName = get-OSCustomizationSpec-name $OSSpecName
$Datastore = get-DatastoreCluster-name $DatastoreCluster
#Assumes DRS
$Cluster = get-Cluster-name $VMhostCluster
#$Folder = get-file $FolderName
# Create VM #.
#write changes
Write-Verbose - Message "virtual deployment by name: [$VMName] using the template: [$TemplateName] and customization specification: [$OSSpecName] on Cluster: [$VMhostCluster] and waiting for the completion"-Verbose
New-VM-name $VMName - OSCustomizationSpec - $OSSpec - $Datastore - $Cluster ResourcePool data store #-location of $Template $Folder models
# Card network settings
$VMNameNetworkSettings = "netsh interface ip set address"Ethernet0"x.x.x.x static 255.255.255.0 x.x.x.x".
$VMNameDNSSettings = ' netsh interface ip set name = "Ethernet0" x.x.x.x dnsservers static secondary primary x.x.x.x '
#power on
Write-Verbose - Message "deployed Virtual Machine $VMname. Turn on/off"- Verbose
Start-VM - VM $VMname
Write-Verbose - Message "Is about to change the IP on VM $FSVMName settings." -Verbose
Invoke-VMScript - ScriptText $VMNetworkSettings VM - $VMName - GuestCredential $VMDomainCredential
Invoke-VMScript - ScriptText $VMNameDNSSettings VM - $VMName - GuestCredential $VMDomainCredential
After that New - VM and the Start-VM the sysprep deployment will begin.
You have to wait the sysprep command to finsih before starting the configuration of components in the guest OS.
One way to do that is to wait for the CustomizationSucceeded event.
See waiting for the customization of the OS to complete
On a side note, when can not configure the NIC with the Set-OSCustomizationNicMapping cmdlet?
Tags: VMware
Similar Questions
-
Need to create the profile and assign it to a user
I created a profile,
create the profile j_profile limit
sessions_per_user 1
Idle 5
failed_login_attempts 3
password_life_time 7
password_resue_time 10
password_verify_function by default;
PROFILE
also, I created a user rr and assigned to the profile,
create user rr
identified by rr
Profile of j_profile;
CREATED BY THE USER
grant create session, resource to rr;
Grant succeeded
now I tried to use the command as:
Select profile_resource_name, limit
of dba_profile
where profile = "j_profile";
showing me 0RA - 00942:TABLE or VIEW IS NOT OUT
can you get it someone please let me know the solution?
name of the data dictionary is "sdba_profile".
-
Creating the folder and by assigning the role access list, approach programmatic
Hi all
I have a requirement to create the folder and assigning RAL in the folder created by the UCM (11.1.1.8) program
I found RIDC API to use for creating folders, can I use the same for the assignment of RAL, pointers?
Thank you
You get errors?
This blog can be useful: adding a file in folders of the WebCenter RIDC content frame. Niels Krijger
Jonathan
-
How to create and assign a VLAN to specific ports
In our ISA550W, create the VLANS for different subnets and assigning them to specific ports are a piece of cake and self explanitory.
However on a SG300-10MP, I am totally lost lol. I just want to make ports 7 & 8 set to a sous-reseau.10 instead of un.6 as the rest of the switch. I need these ports to be totally independent from the rest and not to communicate with others at all.
How can I do this?
Thank you!
Hi Alex,
Under management of VLANS, go into settings of the interface. Change the interfaces that you use to access the ports by choosing the way you want by clicking on change.
Once they are access ports back to Port for page VLAN and assign the port desired as one not marked in this interface.
This should be everything you need, let me know if you have any other questions.
-Good Trent
* Please note the useful messages! **
-
The question that we face, it's what seems to be the forced transfer of the child for parent records records when she is using OPA integrated with RightNow to create records. This scenario is a little complex, so I put try it below with a structure to make it easier.
- Scenario: creating records in RightNow across an interview of the OPA
- OPA setting of mapping:
- Personal contact Center (account)
- At the beginning of the interview, load data related to an individual: Incident
- At the end of the interview, update Incident
- Data models:
- OPA: Global-> [object custom-1] > [custom object 2]
- all containment relationships
- RN: Incident-> 1-> object custom object custom 2
- All relationships of association
- OPA: Global-> [object custom-1] > [custom object 2]
- Detailed description: in Takeovers we are inferring creating two records personal 2 object with a Custom single object 1. In these registers Custom object 2, we put directly the field that contains the link PK 1 custom, object so that each personal object 2 is actually assigned in RN for different Custom object 1s. Some examples of data to explain:
- Custom 1 object associated with the Incident, read in the OPA
- ID is set to 123
- 2 custom object created in OPA under instance of Custom 1 object with ID = 123
- Link to PK for 1 item 123-custom
- 2 custom object created in OPA under instance of Custom 1 object with ID = 123
- PK link for 1 custom object on 345 (different from the Custom object 1 read OPA)
- Custom 1 object associated with the Incident, read in the OPA
- Expected behavior: the object two custom 2s are created and assigned to their respective different personal 1 item RightNow records.
- Actual behavior: the object two custom 2s are created and assigned to the Custom object with ID 123 1
To continue the investigation, we then tested using a different set of objects, standard objects, but with the same rules:
- Data models:
- OPA: Global-> contact-> the incident
- all containment relationships
- RN: Organization-> (current) Contact-> Incident (custom object)
- all relationships of association
- Detailed description: same logic as the previous
- Customer expected: same as previous
- Actual behavior: Matches expected behavior. The Incidents have been correctly assigned to their two different respective Contacts
- OPA: Global-> contact-> the incident
This behavior of divestiture now seems specific to custom objects, but can ayone confirms that this is the case and the behavior expected please?
In addition, we are confident that when you test this feature about 2 weeks ago, we received the expected behavior in BOTH cases to 80%. Maybe it's because changing the configuration in our RN environment that we are not aware of, so we are investingating cela, but are there changes to the OPA / connectors deployment for customer environments in recent weeks that could have caused this please?
Finally, if this could be affected by a change of configuration of RN, nobody knows what this configuration can be please?
I can confirm that this is the expected behavior. A few more details are given in the article of doco hierarchies entity Understand - he explains how the containment relationships mapped determines the assignment to the parent.
The reason for this behavior is that most of the time, it makes sense that the registration of the new entity instances to 'work', feel that they are saved in exactly the same hierarchy of containment that was present in the OPA, and in a way that ensures referential integrity (we support in particular the case where the whole hierarchy of objects is created at the same time if the parent does not yet exist at the time of the creation of the rule (, so you couldn't possibly know its ID). Otherwise, as Matt says, is up to the author of the rule to make sure that, for example, 345 is a valid foreign key.
This behavior should be the same for the built-in objects as well as custom objects, and as Brad says he has not changed recently. If you see this behavior in some cases but not in others, what this means is that probably in cases where it works as expected, there are multiple relationships between the parent and the child object, and it happens that the foreign key that you set manually is different from the foreign key of the mapped containment relationship.
-
Hi all
If someone can help me with a powercli script to create a new account a local administrator on all ESX and ESXi hosts in the vcenter, create a role called admin and give all access except the root. This shoulb be past by a virtual centre.
Very much appreciated to help him.
Kind regards
MelLvin
I suspect that you posted your question to the wrong thread
This requires only a minor change to the script above actually.
Something like that
$groupName = "group"$accountName = "user"$accountPswd = "password"$accountDescription = "A user" $esxlist = Get-VMHostforeach($esx in $esxlist){ Connect-VIServer -Server $esx -User root -Password "password" Try { Get-VMHostAccount -Id $groupName -Group -ErrorAction Stop | Out-Null } Catch { New-VMHostAccount -Id $groupName -GroupAccount | Out-Null } $rootFolder = Get-Folder -Name ha-folder-root Try{ $account = Get-VMHostAccount -Id $accountName -ErrorAction Stop | Set-VMHostAccount -Password $accountPswd -Description $accountDescription -AssignGroups $groupName } Catch{ $account = New-VMHostAccount -Id $accountName -Password $accountPswd -Description $accountDescription -UserAccount -GrantShellAccess -AssignGroups $groupName } $rootFolder = Get-Folder -Name ha-folder-root New-VIPermission -Entity $rootFolder -Principal $account -Role admin Disconnect-VIServer -Confirm:$false}
-
Script to create the folder on the physical disk and not in the package
Hello-
Attached is a script that I have which will create a folder on the C:\ inside the bubble. What I need, it's so he can create a folder on the physical disk and not inside the bubble. Can someone tell me what I did wrong here? I have a similar script which creates a folder on the D drive for the linked clones and it works fine. Thanks in advance!
Change the isolation mode of the file %drive_C%\vaforms5 'Merged' into the Attributes.ini, rebuild the ThinApp and check.
With the help of isolation have merged, the application can read/write file on the physical machine.
-
How and where to use Java script to create a new button in the page of detail of the object
Hi all
I want to create "New/Add button" in the page of detail of the object. If I'm not mistaken I need to use the java script for this, but could you please let me know how and where to use Java script to create a new button in the page of detail of the CRMOD object.
Thanks in advance.
Kind regards
ManishAny related object on the details of the page should have an 'Add' or 'New' or the two default buttons - it of a vanilla feature and will do the required action.
If you want to change this behavior and do something delicate you will potentially have to to go for javascript. You must add the javascript code in a web custom tab on this object.
Admin--> Application Customization--> Contact--> Applet Web Contact
Now add your javascript in the code box, after selecting the type = HTML for this web applet, expose this web applet on the Contact details page layout and your javascript will be called every time this page is loaded.
Check this document online to see how javascript can be integrated into the CRM on demand http://helponmyproject.com/TTOCOD/
See you soon!
Royston -
What script to create a model with a user interface panel
Hello guys,.
So I am new to scripting and javascript and I'm trying to keep it simple. I'm a VJ and want to create a script where I get a 'BPM' and a 'beat' lengh and it generate me a comp with the right length and * a layer with a marker ofr each beat.
I was able to create this script, but I try to make it look a little better with integration of the user interface for AE I wasn't able to make it work right. If anyone can help me or give me some advice. I think that I'm not good with the expression "addComp" in the buildUI function.
I copy everythin because it is long but you'll be understaind the main idea. My question is how to that the entry in my Advanced UI instead of "the guest".
Here is my first code that does the job:
Elements Var Set
var name = prompt ("membership name");
var BPM = prompt ("your BPM");
If (isNaN (BPM)) {}
Alert ("you must give the model a value");
}
Var prompt = beats ("how many times");
If (isNaN (Beats)) {}
Alert ("you must give the model a value");
}
frameRate var = prompt ("your fps");
If (isNaN (frameRate)) {}
Alert ("you must give the model a value");
}
term var = (60 / BPM * bat); Automatically generated
var beat = (60 / BPM);
Part of creation
app.project.items.addComp (name, 1920, 1080, 1, duration, frameRate); Create the model with custom Lengh
App.Project.Item (01).layers.addSolid ([0,0,0], "BG", 1920, 1080, 1, length); Create solid BG
var firstLayer = app.project.item (1) .layer (1);
firstLayer.label = 16;
App.Project.Item (01).layers.addSolid ([0,0,0], "FX", 1920, 1080, 1, length); Create sound FX
App.Project.Item (01).layers.addNull (Duration); Create the Null object
var firstLayer = app.project.item (1) .layer (1); Rename the Null object
firstLayer.enabled = false;
firstLayer.name = "Beats";
firstLayer.label = 0;
Place a marker on the 64 first beat
var myMarker = new MarkerValue("0");
firstLayer.property("Marker").setValueAtTime (beat * 0, myMarker);
Every beat on opacity-keys
myProperty = firstLayer.opacity;
myProperty.setValueAtTime (beat * 0, 0);
For reference, I'm going to place code Dan here and use line numbers, as I explained.
Fig. A
var name = prompt("Composition name"); var BPM =prompt("Your BPM"); if (isNaN(BPM)) { alert("You must give the comp a value"); } var Beats = prompt("How Many Beat"); if (isNaN(Beats)) { alert("You must give the comp a value"); } var frameRate = prompt("Your fps"); if (isNaN(frameRate)) { alert("You must give the comp a value"); } var duration = ( 60 / BPM * Beats ); //Auto Generated var beat = (60 / BPM); //Creation Part var myComp = app.project.items.addComp(name, 1920, 1080, 1, duration, frameRate); // Create Comp with Custom Lengh var firstLayer = myComp.layers.addSolid([0,0,0], "BG", 1920, 1080, 1, duration); // Create BG Solid firstLayer.label = 16; myComp.layers.addSolid([0,0,0], "FX", 1920, 1080, 1, duration); // Create FX Solid firstLayer = myComp.layers.addNull(duration); // Create Null Object firstLayer.enabled = false; firstLayer.name = "Beats"; firstLayer.label = 0; // Place a marker on the 64 first beat var myMarker = new MarkerValue("0"); firstLayer.property("Marker").setValueAtTime(beat*0, myMarker); // Key every Beat on opacity var myProperty = firstLayer.opacity; myProperty.setValueAtTime(beat*0, 0);
OK, so for your configuration, looks like you're striking four data sets. You have the model name (fig.) At line 1), BPM (lines 2-5 of Fig. (A), (lines 7-10 of Fig. rhythms (A) and the FPS (lines 12 to 15 of Fig. (A). then it comes to the UI, you can change what I had posted to...
res = "group{orientation:'column', alignment:['fill', 'fill'], alignChildren:['fill', 'fill'],\ myCompName: EditText{text:'Enter comp name'},\ myBPM: EditText{text:'Enter BPM'},\ myBeats: EditText{text:'Enter beats'},\ myFPS: DropDownList{properties:{items:['23.976', '24', '29.97', '30', '59.97', '60']}},\ createComp: Button{text:'Create comp'},\ }"
This will give you all entries in four data for the user interface. It is preferable to assign each control to a new variable for use in your script.
// Control Variables var compName = myPanel.grp.myCompName; var myBPM = myPanel.grp.myBPM; var myBeats = myPanel.grp.myBeats; var fps = myPanel.grp.myFPS; var createComp = myPanel.grp.createComp;
Once you have these variables you can then start the default implementation as appropriate. in this case, the drop-down list should be a starting point for it's selection, so that you can say to use the first default entry as follows.
//Defaults fps.selection = 0;
Now, you can configure your onClick for button createComp feature. This will contain to working part of the Dan code that treats everything (lines 17-33 of Fig. (A). I've added a few lines of options above this (lines B Fig. 1-7) in the below code just to match the variable names so you wouldn't need to change the code.
Fig. B
//onClick setups createComp.onClick = function(){ //Gather user entered values var name = compName.text; var BPM = Number(myBPM.text); var Beats = Number(myBeats.text); var frameRate = fps.selection.text; var duration = ( 60 / BPM * Beats ); var beat = (60 / BPM); //Creation Part var myComp = app.project.items.addComp(name, 1920, 1080, 1, duration, frameRate); var firstLayer = myComp.layers.addSolid([0,0,0], "BG", 1920, 1080, 1, duration); firstLayer.label = 16; myComp.layers.addSolid([0,0,0], "FX", 1920, 1080, 1, duration); firstLayer = myComp.layers.addNull(duration); firstLayer.enabled = false; firstLayer.name = "Beats"; firstLayer.label = 0; // Place a marker on the 64 first beat var myMarker = new MarkerValue("0"); firstLayer.property("Marker").setValueAtTime(beat*0, myMarker); // Key every Beat on opacity var myProperty = firstLayer.opacity; myProperty.setValueAtTime(beat*0, 0); }
Then line 2 Fig. b starts the call onClick for button and assigns a function. Within the function, we run the process. Fig. B Line 4 seizes the compName edit text attribute of the text control, using the Number() function convert us this text to a number for use online B Fig. 9 and 10 and B Fig. 5 line gets the text attribute of the text control edit BPM. Goes same for line 6 of the Fig. B and the beats variable. For line B Fig. 7, a drop-down list requires calling his selection of the attribute, then it is text attribute to get the actual string. The drop was more logical for FPS due to the standard rates that exist. This list can be changed of course to your liking. Now, there is no safety net as I like to call for the modification of the text controls to make sure text is not entered when you need a number and vice versa. It would be something of can check after line 7, Fig. B before trying to run the code in process (Fig. B lines 9-25). I hope that it will be easy enough for you to understand.
If the script is as follows.
{ function myScript(thisObj) { function myScript_buildUI(thisObj) { var myPanel = (thisObj instanceof Panel) ? thisObj : new Window("palette", "My Panel Name", [0, 0, 300, 300]); res="group{orientation:'column', alignment:['fill', 'fill'], alignChildren:['fill', 'fill'],\ myCompName: EditText{text:'Enter comp name'},\ myBPM: EditText{text:'Enter BPM'},\ myBeats: EditText{text:'Enter beats'},\ myFPS: DropDownList{properties:{items:['23.976', '24', '29.97', '30', '59.97', '60']}},\ createComp: Button{text:'Create comp'},\ }" //Add resource string to panel myPanel.grp = myPanel.add(res); // Control Variables var compName = myPanel.grp.myCompName; var myBPM = myPanel.grp.myBPM; var myBeats = myPanel.grp.myBeats; var fps = myPanel.grp.myFPS; var createComp = myPanel.grp.createComp; //Defaults fps.selection = 0; //onClick setups createComp.onClick = function(){ //Gather user entered values var name = compName.text; var BPM = Number(myBPM.text); var Beats = Number(myBeats.text); var frameRate = fps.selection.text; var duration = ( 60 / BPM * Beats ); var beat = (60 / BPM); //Creation Part var myComp = app.project.items.addComp(name, 1920, 1080, 1, duration, frameRate); var firstLayer = myComp.layers.addSolid([0,0,0], "BG", 1920, 1080, 1, duration); firstLayer.label = 16; myComp.layers.addSolid([0,0,0], "FX", 1920, 1080, 1, duration); firstLayer = myComp.layers.addNull(duration); firstLayer.enabled = false; firstLayer.name = "Beats"; firstLayer.label = 0; // Place a marker on the 64 first beat var myMarker = new MarkerValue("0"); firstLayer.property("Marker").setValueAtTime(beat*0, myMarker); // Key every Beat on opacity var myProperty = firstLayer.opacity; myProperty.setValueAtTime(beat*0, 0); } //Setup panel sizing and make panel resizable myPanel.layout.layout(true); myPanel.grp.minimumSize = myPanel.grp.size; myPanel.layout.resize(); myPanel.onResizing = myPanel.onResize = function () {this.layout.resize();} return myPanel; } var myScriptPal = myScript_buildUI(thisObj); if ((myScriptPal != null) && (myScriptPal instanceof Window)) { myScriptPal.center(); myScriptPal.show(); } } myScript(this); }
-
Hi, I created the procedure and its code is / / DELETE FROM <? = odiRef.getObjectName ("L", "TRG_SALES", "ORACLE_ORCL_LOCAL_SALES", "", "D")? > / / and when I'm running, the error appeared.
com.sunopsis.tools.core.exception.SnpsSimpleMessageException: ODI-17517: error in the interpretation of the task.
Task: 1
java.lang.Exception: the application script threw an exception: com.sunopsis.tools.core.exception.SnpsSimpleMessageException: Exception getObjectName ("L", "TRG_SALES", "ORACLE_ORCL_LOCAL_SALES", "DEVELOPMENT", "D"): SnpLSchema.getLSchemaByName (): SnpLschema is no information OSB: Delete_Tar_Sales on line: column 0: columnNo
at com.sunopsis.dwg.codeinterpretor.SnpCodeInterpretor.transform(SnpCodeInterpretor.java:489)
at com.sunopsis.dwg.dbobj.SnpSessStep.createTaskLogs(SnpSessStep.java:737)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:465)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2128)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$ 2.doAction(StartSessRequestProcessor.java:366)
at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$ 0 (StartSessRequestProcessor.java:292)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$ StartSessTask.doExecute (StartSessRequestProcessor.java:855)
at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
to oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$ 2.run(DefaultAgentTaskExecutor.java:82)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.Exception: the application script threw an exception: com.sunopsis.tools.core.exception.SnpsSimpleMessageException: Exception getObjectName ("L", "TRG_SALES", "ORACLE_ORCL_LOCAL_SALES", "DEVELOPMENT", "D"): SnpLSchema.getLSchemaByName (): SnpLschema is no information OSB: Delete_Tar_Sales on line: column 0: columnNo
at com.sunopsis.dwg.codeinterpretor.SnpCodeInterpretor.transform(SnpCodeInterpretor.java:476)
... 11 more
Caused by: org.apache.bsf.BSFException: the application script threw an exception: com.sunopsis.tools.core.exception.SnpsSimpleMessageException: Exception getObjectName ("L", "TRG_SALES", "ORACLE_ORCL_LOCAL_SALES", "DEVELOPMENT", "D"): SnpLSchema.getLSchemaByName (): SnpLschema is no information OSB: Delete_Tar_Sales on line: column 0: columnNo
at bsh.util.BeanShellBSFEngine.eval (unknown Source)
at bsh.util.BeanShellBSFEngine.exec (unknown Source)
at com.sunopsis.dwg.codeinterpretor.SnpCodeInterpretor.transform(SnpCodeInterpretor.java:471)
... 11 more
Text: REMOVE OF <? = odiRef.getObjectName ("L", "TRG_SALES", "ORACLE_ORCL_LOCAL_SALES", "", "D")? >.
at com.sunopsis.dwg.dbobj.SnpSessStep.createTaskLogs(SnpSessStep.java:764)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:465)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2128)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$ 2.doAction(StartSessRequestProcessor.java:366)
at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$ 0 (StartSessRequestProcessor.java:292)
to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$ StartSessTask.doExecute (StartSessRequestProcessor.java:855)
at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
to oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$ 2.run(DefaultAgentTaskExecutor.java:82)
at java.lang.Thread.run(Thread.java:662)
If you do this in a procedure, use the following syntax:
<%=odiRef.getObjectName("L", "TRG_SALES", "D")%>
and set the relevant logical schema in the options on the target tab of the procedure. Also, make sure you only select the correct technology type in the options on the target tab.
-
The script that creates the default tabs in the margin of the document.
I need a script that creates marks (1 cm margins: top, left, right, down and two others in the Center, a vertical and a horizontal) independent of the document size. Would look like this: whenever I create a new document, execute an action which rodadoria the script to create a document with the enclosed area, similar to the figure below: thank you!
#target photoshop; if(documents.length) main(); function main(){ var strtRulerUnits = app.preferences.rulerUnits; var strtTypeUnits = app.preferences.typeUnits; app.preferences.rulerUnits = Units.PIXELS; app.preferences.typeUnits = TypeUnits.PIXELS; var cm = activeDocument.resolution/2.54; var W =activeDocument.width; var H =activeDocument.height; guideLine(cm,"Vrtc"); guideLine(cm,"Hrzn"); guideLine(W-cm,"Vrtc"); guideLine(H-cm,"Hrzn"); guideLine(W/2,"Vrtc"); guideLine(H/2,"Hrzn"); app.preferences.rulerUnits = strtRulerUnits; app.preferences.typeUnits = strtTypeUnits; } function guideLine(position, type){ var desc27 = new ActionDescriptor(); var desc28 = new ActionDescriptor(); desc28.putUnitDouble( app.charIDToTypeID('Pstn'), app.charIDToTypeID('#Pxl'), position ); desc28.putEnumerated( app.charIDToTypeID('Ornt'), app.charIDToTypeID('Ornt'), app.charIDToTypeID(type) ); desc27.putObject( app.charIDToTypeID('Nw '), app.charIDToTypeID('Gd '), desc28 ); executeAction( app.charIDToTypeID('Mk '), desc27, DialogModes.NO ); };
-
Need help to change a creation of VM PowerCLI script to support host ESXi and vCenter
I have the below script that I created with much help from LucD - thank you! This has served me well for my lab procedures rip - replace so far. This script works when I run it against my single ESXi host when it is not connected to my server vCenter, but it throws errors when I run this script when the host is connected to vCenter and it fails to implement the controller SCSI Paravirtual. I think when the host is under the control of vCenter that changed some of the settings.
If I point to the vCenter instead of ESXi host, I still get the same problem. In addition, I would also add the ability to create virtual machines in pools of different resources of a cluster of vSphere. My name in data center's LAB and my Cluster is called Local with pools of resources like TestLab, etc. see Horizon.
Ideas please!
Error message:
Set SCSI controller: 21/10/2014-18:02:11 SCSI controller set Failure of the operation for the entity 'W81X86 '. with the following message: "access to the parameters of resources on the host computer is the server manages:
'192.168.1.5 '. »
Get-SCSI - VM $VM controller | where {$_.} Type - eq "VirtualLsiLogicSAS"} | All-CBS...
~~~~~~~
+ CategoryInfo : NotSpecified: (:)) [game-SCSI controller], HostAccessRestrictedToManagementServer) + FullyQualifiedErrorId: Client20_TaskServiceImpl_CheckServerSideTaskUpdates_OperationFailed, VMware.VimAutomation . ViCore.Cmdlets.Commands.VirtualDevice.SetScsiController
The real script:
# Create Virtual Machines LAB of CSV file
Add-PSSnapin-name "VMware.VimAutomation.Core" - ErrorAction SilentlyContinue
Game-PowerCLIConfiguration - ignore InvalidCertificateAction - confirm: $False | Out-Null
$ESXHost = "192.168.1.10".
$DelayValue = "5000" # 5 seconds startup time $vmConfigSpec = new-Object VMware.Vim.VirtualMachineConfigSpec
$vmConfigSpec.BootOptions = new-Object VMware.Vim.VirtualMachineBootOptions
$vmConfigSpec.BootOptions.BootDelay = $DelayValue
$vmConfigSpec.BootOptions.bootOrder += new-Object VMware.Vim.VirtualMachineBootOptionsBootableCdromDevice
$vmConfigSpec.flags = new-Object VMware.Vim.VirtualMachineFlagInfo
$vmConfigSpec.flags.enableLogging = $false
$net = new-object - ComObject WScript.Network
$net. MapNetworkDrive ("b", "\\192.168.1.3\Build", $false, "", "")
to connect-VIServer-server '$ESXHost'-'root' user - password to 'P@ssw0rd '.
Import-CSV B:\LabBuild\Lab.csv - UseCulture | %{
$disks = @($_.) HD1)
if($_.) HD2 - not 0) {}
$disks += $_. HD2
$vm = New-VM - VMhost $ESXhost - Name $_. VMName - MemoryMB $_. MemoryMB - NumCPU $_. NumCPU-Version $_. Version - ID $_. ID-floppy - Datastore $_. Data-DiskGB $disks - DiskStorageFormat 'Thin' store - resourcepool $_. RPool-note $_. Notes - CD #-RunAsync
Get-CDDrive - VM $vm | Game-CDDrive - ISOPath $_. ISOPath - StartConnected $true - confirm: $false | Out-Null
Get-NetworkAdapter - VM $vm | Together-NetworkAdapter NetworkName-$_ .NetworkName-$_.NetworkType to confirm Type: $False | Out-Null
FloppyDrive get - VM $vm | Game-FloppyDrive - FloppyImagePath $_. FloppyPath - StartConnected $true - confirm: $false | Out-Null
Get-SCSI - VM $VM controller | where {$_.} Type - eq "VirtualLsiLogicSAS"} | Set controller SCSI-type Paravirtual
$vm. ExtensionData.ReconfigVM_Task ($vmConfigSpec) | Out-Null
}
#This line verifies the powerstate and POWER ON VM to start the installation
#$vmState = get - VM $vm | Select-Object PowerState
# If ($vmState - matches "ff") {Get - VM $vm |} Start-VM}
}
The Destination parameter in the cmdlet Copy-DatastoreItem takes an object that specifies a folder or file on the data store.
Take a look at KB2001041, he explains the cmdlet and parameter more in detail.
-
creation and assignment of tags in vCenter via vCO
VMware is moving away from custom attributes and categories and tags. Currently, vCO vCenter workflows for the creation of custom attributes, however, I found nothing on the automation of the creation and assignment of tags with virtual machines.
Finally, I should mention the category via vCAC at the time of commissioning. tag could be billing department as well as the response or if the tag exists (IE Engineering) and then he would associate the (engineering) tag to the category (dept billing). However if the tag does not exist, then a new tag and associated with the virtual machine.
thoughts?
PowerShell commands
Since version VMware PowerCLI 5.5R1 and until there are a number of commands for working with tags, such as:
- Get - Tag
- New-TagAssignment
I had similar questions about the tags quite awhile (5.1 is released at the time). I don't think I ever got a response. In the meantime, you could create a wrapper for PowerCLI orders or make calls directly to the api. A little messy but it would work.
-
I am a freelance illustrator who uses extensively layer styles in my workflow. As the pixelation and the implementation of a new layer style is constant and ongoing, I would like a way to rationalize the actions of 3-4 that I use currently in a single conditional script. I am currently using CS6. Here's the description detailed of how I want the script to run:
(1) is the selected layer named "layer magic 1"? Otherwise, go to the #2 line. If Yes, go to the #8 line.
(2) is the selected layer named "magic layer 2? Otherwise, go to the #3 line. If Yes, go to the #8 line.
(3) is the selected layer named "layer Magic 3"? Otherwise, go to the #4 line. If Yes, go to the #8 line.
(4) is the selected layer named "layer Magic 4? Otherwise, go to line 5-7 bolt torque. If Yes, go to the #8 line.
(5) make the new layer.
(6) new name "Layer1" layer magic
(7) add the layer style (also nominated) "magical layer1. Script concludes.
(8) the layer is empty? If Yes, go to the #9 line. Otherwise, go to line 10-12 bolt torque.
(9) queue dialog box: "the end of magic layers? with the choice of the 'yes' or 'no '.
• If "Yes" is selected, the layer is removed. Script concludes.
• If "no" is selected, the layer is kept (no change). Script concludes.
(10) rasterize layer.
(11) rename the layer 'layer of paint '.
(12) merge the layer down. Go to the line of 5-7 bolt torque.
I would prefer if possible javascript, because I will need for the script between my Mac desktop and my Windows Tablet of the Cintiq based on the port. Any help would be greatly appreciated; It took me some time to try to learn the writing of scripts, but between labor day and the night in freelance, I managed only by creating extreme levels of frustration! Laughing out loud! PLEASE AND THANK YOU!
Good guys, has been able to play a bit with what I learned between both of you and others and come to this:
(1) function main() {}
2)
(3) var __indexOf = [] .indexOf | function (Item) {for (var i = 0, l = this.length; i)}< l;="" i++)="" {="" if="" (i="" in="" this="" &&="" this[i]="==" item)="" return="" i;="" }="" return="" -1;="">
4)
(5) var makeNewLayer = function() {}
(6) var newLayer = doc.artLayers.add ();
(7) newLayer.name = 'magic layer1.
(8) newLayer.applyStyle('magic layer1');
(9) doc.activeLayer = newLayer;
10) }
11)
(12) var doc = app.activeDocument;
(13) lay = doc.activeLayer,
(14) names = ['magic layer1',
"(15) ' magical layer2.
(16) ' magical layer3.
["(17) ' magic layer4"];
18)
(19) if (__indexOf.call (name, lay.name)< 0="" )="">
(20) newLayer = doc.artLayers.add ();
(21) makeNewLayer();
(22) return;
23) }
24)
(25) if (doc.activeLayer.kind == LayerKind.NORMAL & doc.activeLayer.bounds [2] == 0 & doc.activeLayer.bounds [3] == 0) {}
(26) var dialog = confirm (the ' magical sleep end? ");
(27) if (dialogue) {}
(28) app.activeDocument.activeLayer.remove ();
29) }
(30) return;
31) }
(32) var idrasterizeLayer = stringIDToTypeID ("rasterizeLayer");
(33) var desc5 = new ActionDescriptor();
(34) var idnull = charIDToTypeID ("null");
(35) ref4 var = new ActionReference();
(36) var idLyr = charIDToTypeID ("Lyr");
(37) var idOrdn = charIDToTypeID ('Ordn');
(38) var idTrgt = charIDToTypeID ("Trgt");
(39) ref4.putEnumerated (idLyr, idOrdn, idTrgt);
(40) desc5.putReference (idnull, ref4);
(41) var idWhat = charIDToTypeID ('what');
(42) var idrasterizeItem = stringIDToTypeID ("rasterizeItem");
(43) var idlayerStyle = stringIDToTypeID ("layerStyle");
(44) desc5.putEnumerated (idWhat, idrasterizeItem, idlayerStyle);
(45) executeAction (idrasterizeLayer, desc5, DialogModes.NO);
46)
(47) doc.activeLayer.merge ();
(48) doc.activeLayer.name = 'base paint layer;
(49) makeNewLayer();
(50) return;
51)
52) }
53)
(54) main();
I know it's a little ugly code lines 32-45, but (through other channels, thank you JJMack & c.pfaffenbichler!), I realized that there is no way to script, the rasterization of a "layer Style" others that using ScriptingListener.plugin. DBarranca Yes... I realized a little I "screwed the dog" on the diaper change after that I played with him for a while. Also a little, visited account that the "new layer" you were a little enough to add was not going to solve my problem. ended up having to add a "new layer" on line 20. Everything seems to work exactly as I intended at the moment. I DO, however, like the idea of having an error message "cannot find the magic layer1 Style". How would I want to add that in?
Thanks again,
-Eric P
-
Change the PowerCLI Script to use the DRS and DRS storage
Hello
I have a PowerCLI script that specifies a host and a data store to create a new virtual machine, which has served us well. Now we have activated the DRS and DRS storage and I wonder what to change in order to take advantage of these features. Are there commands to specify a cluster and the cluster data store and let the DRS to decide the initial investment for a new virtual machine? At the moment we put all hosts and the warehouses of data as variables and use them in the line below.
Thank you.
$newVM = New-VM-name $NewVMname - VM $TemplateName Datastore - $datastore - VMHost $vHost - confirm: $false - location $myName
You set a Datastorecluster?
If Yes, then you can replace the value of parameter data with the datastorecluster object store.
Replacing a VMHost with a cluster is not taken in charge I'm afraid.
But you can use something like this
New-VM-name TestVM Datastore - DSC - ResourcePool (Get-Cluster-name mycluster |) Get - Resourcepool - name of resources)
This will automatically select the VMHost.
The virtual machine appears in the root of the cluster.
DSC is the name of a datastorecluster in the cluster mycluster
Maybe you are looking for
-
Satellite L300D-243 - cannot download pictures
Hi can anyone help? Cannot download photos from digital camera to the laptop. Can do it easily on the old computer that runs on Windows XP. Must use old computer and transfer via USB key.Very annoying to have a new laptop. Thanks to all those who can
-
ThinkPad W530 problem - Microphone does not work do not
Hello My W530 microphone does not work. Whenever any problem try to use (Skype, Audacity), it still shows a quick activity (about 0.5 ms), always with the same- and nothing more, ever. I installed the drivers from Realtek and lenovo drivers, nothing
-
How to upgrade my account administrator high?
-
Connection to any type of Bluetooth or WiFi signal
This probably isn't the right place for this but it is the closest, I could find. I have a device that uses WiFi for communication between others of its kind, and I want to be able to connect the data it transmits, may reproduce too. Is it possible t
-
What is the searching for the latest updates?
What im asking, that's how much time should I give it "Update" before I know not if there is a problem with it. Its takes an awful long time to check the updates. And it helps me reinstall windows?