Jump to content

vernalex

Members
  • Posts

    7
  • Joined

  • Last visited

vernalex's Achievements

Seeker

Seeker (1/7)

0

Reputation

  1. I love this UDF. It looks great! And I realize I'm responding to a post from 2016, but I'm hoping it's not a completely dead thread. However, I'm interested in using it in multiple programs, but when I do the messages overlap. There's no way for the programs not to overlap each other when messaging, right? I mean, program A has a message, and then program B has a message, and they overlap. This is different than if a single program does multiple messages, where they'll stack on each other. Thanks. :)
  2. Thank you very much. The key element I was missing was "for $item in $array". I was trying to access the array through brackets and that wasn't working. Thank you again.
  3. Generally, I have a Win32_EncryptableVolume COM object in AutoIt that takes a parameter on the GetKeyProtectors method of a string array that the method needs to write the results into. Is this possible to do? If so, how? More explicitly, I am using WMI to obtain a COM object from Win32_EncryptableVolume (from the \\.\root\cimv2\Security\MicrosoftVolumeEncryption namespace). I end up with a COM object variable. I can access the various Win32_EncryptableVolume properties and methods. This part works great. However, what I really want to use is the GetKeyProtectors method. This takes an int protector type (in my case at the moment I really only want #3 for the 'numeric password') and a string array that it will write the results into. That is, GetKeyProtectors( in int KeyProtectorType = 3, out string VolumeKeyProtectorID[] ) or, $Win32_EncryptableVolume_object.GetKeyProtectors(3, $array_to_receive_data) So, I need to pass in a string array that will receive the results as the second parameter. Is this possible to do? If so, how? I've tried passing in an array and it doesn't receive the data. I've tried using DllCreateStruct unsuccessfully. I found some various websites and forums with information that seems relevant but isn't exactly what I need so they didn't end up working out. At this point I'm flailing so I'm hoping someone here understands. Or if there's another way to discover key protectors then that would be helpful too. I could parse output from manage-bde.exe, but I'd much prefer to do it with COM. My end goal is to obtain the numerical password with the GetKeyProtectorNumericalPassword method, but I need to know the volume's unique protector ID. Thank you for whatever help you can provide and let me know if you need anything else from me.
  4. I've looked through a great number of resource UDFs and I've yet to find one that can do it without an external executable. The wrapper can't work for me because it needs to be after compilation. Hmmmm...
  5. I am trying to edit file version resource values on a compiled executable and I'm floundering. I believe I'm in the right area with _WinAPI_BeginUpdateResource(..), _WinAPI_UpdateResource(...) and _WinAPI_EndUpdateResource(...) functions, but I don't understand the proper struct format or the UpdateResource parameters. I've found the Microsoft articles http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058(v=vs.85).aspx (for VERSIONINFO) and http://msdn.microsoft.com/en-us/library/windows/desktop/aa381049(v=vs.85).aspx (for StringFileInfo BLOCK). In particular does anyone know how to set and get the FileDescription resource data on an already compiled exe? My goal is that I can get the FileDescription field, change it, and then write it back to the exe. Realistically I want to be able to inject a bit of data into the exe so I can bake select settings into the exe. If there's a better way for doing this type of thing, such as embedding an INI after the fact, then that would be useful to me. Thank you.
  6. This doesn't resolve my issue because the Vollatran Project has the same issue as my own program. To clarify I'm not trying to spawn an external program from within AutoIt. I am already very familiar with RunWait(...). To give a quick example... write a simple program with a MsgBox. Compile it as a GUI application and as a console application. Then run it from the command-line shell. The GUI application will immediately drop back to the shell while the MsgBox appears on the screen, which would allow you to run another program. This is very bad for script processing. The console application will display the MsgBox and the shell will wait. This is how I'd like it to work. But if you run a console application the GUI will appear as well as a shell, which is definitely not desired in my case.
  7. Is there a way to make a command-line script wait until an AutoIt executable is done running? I wrote a program and it's meant to be run in scripts. But, when the application is compiled as a GUI application then when a script runs it the application immediately returns control back to the script so it continues on without waiting for the script to finish. If I compile it as a command-line application this isn't an issue. But, I need it to be a GUI application because it can be run graphically and I don't want a console window in the background. I can start the program with "start /wait", but I'd prefer if there were a way for AutoIt to hold control until it is done. Ideas?
×
×
  • Create New...